Heim  >  Artikel  >  Web-Frontend  >  js中匿名函数的N种写法_javascript技巧

js中匿名函数的N种写法_javascript技巧

WBOY
WBOYOriginal
2016-05-16 18:20:031100Durchsuche

匿名函数没有实际名字,也没有指针,怎么执行滴?
其实大家可以看看小括号的意义就应该可以理解。小括号有返回值,也就是小括号内的函数或者表达式的返回值,所以说小括号内的function返回值等于小括号的返回值,不难理解 (function(){})()可以将没有名字的函数执行了把…
关于匿名函数写法,很发散~
最常见的用法:

复制代码 代码如下:

(function() {
alert('water');
})();

当然也可以带参数:
复制代码 代码如下:

(function(o) {
alert(o);
})('water');

想用匿名函数的链式调用?很简单:
复制代码 代码如下:

(function(o) {
alert(o);
return arguments.callee;
})('water')('down');

常见的匿名函数都知道了,看看不常见的:
复制代码 代码如下:

~(function(){
alert('water');
})();//写法有点酷~

复制代码 代码如下:

void function(){
alert('water');
}();//据说效率最高~

复制代码 代码如下:

+function(){
alert('water');
}();

复制代码 代码如下:

-function(){
alert('water');
}();

复制代码 代码如下:

~function(){
alert('water');
}();

复制代码 代码如下:

!function(){
alert('water');
}();

复制代码 代码如下:

(function(){
alert('water');
}());//有点强制执行的味道~

这么多写法贱卖啦~呵呵,其实有些人考虑到写法的效率问题,如果可以,给我一个数据把,自我感觉这些写法是有效率问题,但是应该是微乎其微而已(或许不对),我会随便选一个用~
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn