(function createTaskRecord() {
// with some details
}()) // <--- whats the use of parentheses after the } ?
我是Javascript的新手,希望了解最终调用()
的函数是什么?为什么使用它们以及何时使用?
答案 0 :(得分:2)
这称为立即执行。这将立即评估您的功能。
实际上,使用这种方式定义的函数有一个更正式的名称:IIFE(立即调用函数表达式)。
Wikipedia有一篇关于它们的精彩文章:
立即调用的函数表达式(或IIFE,发音为 &#34; iffy&#34;)是一种JavaScript设计模式,它产生一个词法范围 使用JavaScript的函数范围。立即调用函数 表达式可用于避免块内的变量提升, 防止污染全球环境并同时进行 允许公开访问方法,同时保留变量隐私 在函数中定义。这种模式被称为a 自动执行匿名函数,但Ben Alman引入了这个术语 不久,IIFE作为该模式的语义更准确的术语 在讨论了comp.lang.javascript之后。