匿名函数写法:
1.优先表达式:由于javascript执行表达式是从圆括号里面到外面,所以可以用圆括号强制执行声明的函数
(function(){
alert(2);
})()
2.Void操作符: 用void操作符去执行一个没有圆括号包围的一个单独操作数。
void function(){
alert(3);
}()
3.方式三
~function(){
//…
}();
位运算符都能立即返回后面表达式的值。其实其他位运算符都可以达到这样的目的,例如:
!function(){
//…
}();
等都可以达到我们的目的。所以其实用“~”也并无其他的原因,仅仅是代码“看着好看”而已 :)
综合代码量以及效率等情况考虑,用 方式一 没错的;在需要额外节省代码的极端情况,用 方式三;考虑效率优先,那么使用 方式二。这里要说明下,其实三种方式效率之间的差异非常小,因此单纯拿效率来考虑采用那种方式,几乎是站不住脚的。
JS声明函数大体上有三种方法:
1.常规写法
Java代码
fucntionfuncName(var1,var2......){
//addyoucodehere
}
2.匿名函数写法
Java代码
varfuncName=function(var1,var2....){
//addyoucodehere
}
3.构造函数法
Java代码
varfuncName=newFunction("x","y","alert(x+y);");