// 如果你不在乎返回值,可以这么做
!function(){ /* code */ }();
~function(){ /* code */ }();
-function(){ /* code */ }();
+function(){ /* code */ }();
学习的时候,看了本站和一些第三方技术站的帖子,他们有的在文章中写到上面的代码。
我知道很多匿名都是以()
来执行调用的。但为什么他们说如果不在乎返回值
可以用!
+
~
这些符号。我不理解他们说的返回值是什么?
我第一反应是这样 !function(a) {alert(a)}(1000);
但在结果返回的是1000. 如果按照他们说的,不应该返回的是布尔值吗?为何是1000
所以到这里有些不太理解了。还请各位指定迷津。
第一个问题,关于函数返回值:
第二个问题:
返回值和打印的结果不是一回事!
如果想看到被
!
作用后的结果,可以改写成这样