javascript 匿名函数有哪几种执行方式:
( function() {}() ); ( function() {} )(); [ function() {}() ]; ~ function() {}(); ! function() {}(); + function() {}(); - function() {}(); delete function() {}(); typeof function() {}(); void function() {}(); new function() {}(); new function() {}; var f = function() {}(); 1, function() {}(); 1 ^ function() {}(); 1 > function() {}(); // ...
!(function() {})();前面为什么要加~、!这些符号?
后面的()是执行一个函数,而(function() {})是一个执行表达式,返回一个匿名函数的引用。
在前面加上一元运算符是为了进行分隔。
否则如果在(function() {})();之前包含“未结束”的语句,还没有加一元运算符进行分隔的话,会报错。
提示缺少函数。
匿名函数立即调用的函数表达式 -IIFE(Immediately-Invoked Function Expression)
原文:http://www.cnblogs.com/sslxf1992/p/5429116.html