underscore.js IIFE语法有效吗

Is the underscore.js IIFE syntax valid?

本文关键字:有效 语法 IIFE js underscore      更新时间:2024-05-12

我刚刚看了一眼undercore.js源代码,当我把源代码剥离到包含IIFE的部分时,它看起来像这样:

(function() {
}.call(this));

我总是使用带有外部副题(function() {}).call(this);的语法,并想知道这种语法是否也是有效和常见的?

如果您特别询问外部)的位置,那么它是位于右大括号之后还是整个表达式之后在大多数情况下都无关紧要。无论哪种方式都不会影响IIFE的执行方式。

这里唯一的区别是.call(this),它是作为函数表达式的一个成员调用的——典型的IIFE只有紧跟在右大括号后面的内括号。使用.call(this)的原因在包括本答案在内的许多其他答案中有详细说明。