!function(){}()

函数后的();表示要执行这个函数。所以要求后面这个括号()前面必须是一个表达式。

(表达式理解参阅http://www.cnblogs.com/fangsmile/p/8337021.html)

所以!的作用是将function(){...}函数体转为一个函数表达式。

同样道理:
~function() {
  ...
}();
一样可行。


但是我们常用的方式是:
(function() {
  ...
})();
我更倾向这种方式,因为简单易读。

posted @ 2018-01-23 16:34  方帅  阅读(4267)  评论(1编辑  收藏  举报