跟大家分享一个立即函数的写法,此写法类似函数外面加括号。
首先我们看一个错误的写法:
function (){console.log('aa')}()
如果将该代码放到控制台上,将会报错,因为无法试别是表达式还是函数声明。
俺今天要给大家写法是这样的:
+function (){console.log('fuck the world');}()//打印fuck the world
如果没有+,那么如果解析器处于一个期望语句(可以是一个表达式或几个非表达式语句)的状态,那么单词函数看起来就像函数声明的开头而不是函数表达式,将是语法错误(例如我们开头的错误实例)。 使用+,可以将它识别为一个表达式,并且正确执行。
+只是其中一个选项。 它也可以是 – ,!,〜或任何其他一元运算符。 或者,您可以使用括号:
(function() { console.log("Foo!"); })();
// or
(function() { console.log("Foo!"); }());
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。