再写 JS 代码时,有时会写一个自执行匿名函数,把所有的函数 和 变量包裹起来
常见的几种写法如下:
(function() {
/* code */
})();
解释:包围函数 (function(){})
的第一对括号向脚本返回 未命名的函数,随后一对空括号立即执行返回的 未命名函数,括号内为匿名函数的参数。
作用:可以用它创建命名空间,只要把自己所有的代码都写在这个特殊的函数包装内,那么外部就不能访问,除非你允许(变量前加上window,这样该函数或变量就成为全局)。各JavaScript库的代码也基本是这种组织形式。
除此之外,还有
!function () {
/* code */
} ();
~function () {
/* code */
} ();
-function () {
/* code */
} ();
+function () {
/* code */
} ();
网友评论