复制
收藏
提问
简洁
以下四个选项中,哪项为立即执行函数( ) A function test(){return 1+2;} B ((function go(){console.log('gogogo!')})) C B和C都是 D (function sayHello(){document.write('Hello');})()
4月前
全网
文档
学术
百科
知识库
回答简洁模式
深入研究一些
根据提供的参考资料,立即执行函数(Immediately Invoked Function Expression,IIFE)是一种在定义后立即执行的函数,它通常是一个匿名函数,并且需要满足两个条件:声明一个匿名函数并立即调用这个匿名函数。现在我们来分析每个选项:
A. function test(){return 1+2;}
这是一个函数声明,但它没有被立即调用,所以这不是一个立即执行函数。6
B. ((function go(){console.log('gogogo!')}))
这个表达式尝试创建一个立即执行函数,但是语法不正确。在最外层的括号内应该直接调用函数,而不是再次声明一个函数。因此,这不是一个有效的立即执行函数。5
C. “B和C都是” 由于B选项的语法错误,C选项声称两者都是立即执行函数是不正确的。
D. (function sayHello(){document.write('Hello');})()
这是一个匿名函数,它后面跟着一对括号,这表示函数被立即调用。这符合立即执行函数的定义。5
因此,正确答案是:
D. (function sayHello(){document.write('Hello');})()
是一个立即执行函数。
你觉得结果怎么样?