IIFE。类型错误:需要(...)(...)不是一个函数
运行简单的脚本。得到了一个错误。
const fetch = require("node-fetch")
const url = ""
(async ()=>{
const response = await fetch(url)
const data = await response
console.log(data)
})()
错误
$节点api.js类型错误:需要(...)(...)不是一个函数
我缺少的是在这里吗?谢谢。
回答如下:因为你希望它在某些情况下Automatic Semicolon Insertion(ASI)不起作用。
IIFEs落入的那些情况下,其中括号被级联与前一行代码之一。
为了改善这一点,只是前缀你IIFE的分号:
const fetch = require("node-fetch")
const url = "https://www.someurl"
;(async () => {
const response = await fetch(url)
console.log(response)
})()
或者,正如@estus暗示的意见,只是避免写分号更少的代码。