面试小汇总-(javascript/jQuery怎么防止全局变量污染和fn名称冲突?)
2018-03-15 17:54
741 查看
1、用命名空间var nameSpace={
v1:xxx,
v2:xxx,
a1:function(){...},
a2:function(){...}
}2、用!function(){}()将内容包起来!function(){
v1=xxx;
v2=xxx;
function a1(){...}
function a2(){...}
}();自执行匿名函数:
常见格式:(function() { /* code */ })();
解释:包围函数(function(){})的第一对括号向脚本返回未命名的函数,随后一对空括号立即执行返回的未命名函数,括号内为匿名函数的参数。
作用:可以用它创建命名空间,只要把自己所有的代码都写在这个特殊的函数包装内,那么外部就不能访问,除非你允许(变量前加上window,这样该函数或变量就成为全局)。各JavaScript库的代码也基本是这种组织形式。
总结一下,执行函数的作用主要为 匿名 和 自动执行,代码在被解释时就已经在运行了。其他写法:(function () { /* code */ } ());
!function () { /* code */ } ();
~function () { /* code */ } ();
-function () { /* code */ } ();
+function () { /* code */ } ();整理自segmentfault网友回
4000
答。
v1:xxx,
v2:xxx,
a1:function(){...},
a2:function(){...}
}2、用!function(){}()将内容包起来!function(){
v1=xxx;
v2=xxx;
function a1(){...}
function a2(){...}
}();自执行匿名函数:
常见格式:(function() { /* code */ })();
解释:包围函数(function(){})的第一对括号向脚本返回未命名的函数,随后一对空括号立即执行返回的未命名函数,括号内为匿名函数的参数。
作用:可以用它创建命名空间,只要把自己所有的代码都写在这个特殊的函数包装内,那么外部就不能访问,除非你允许(变量前加上window,这样该函数或变量就成为全局)。各JavaScript库的代码也基本是这种组织形式。
总结一下,执行函数的作用主要为 匿名 和 自动执行,代码在被解释时就已经在运行了。其他写法:(function () { /* code */ } ());
!function () { /* code */ } ();
~function () { /* code */ } ();
-function () { /* code */ } ();
+function () { /* code */ } ();整理自segmentfault网友回
4000
答。
相关文章推荐
- JavaScript防止全局变量污染的方法总结
- 防止污染Javascript全局环境,避免命名冲突
- 什么是全局变量?JavaScript的全局变量怎么定义?
- 防止js全局变量污染方法总结
- 【读书笔记】JavaScript解决全局变量冲突
- js怎么防止变量冲突
- javascript全局变量怎么定义?
- 论Javascript如何防止污染全局作用域
- js中防止全局变量被污染的方法
- Javascript 定义命名空间,减少全局变量污染
- 防止js全局变量污染方法总结-待续
- 防止js全局变量污染方法总结-待续
- Javascript匿名函数的作用之一:创建临时的命名空间,防止全局变量污染
- 12 JavaScript基础之--变量的作用域和隐式全局变量
- javascript 没有块级作用域 JavaScript声明全局变量三种方式 及
- JavaScript 声明全局变量的三种方式
- [Javascript] 怎么判断变量是否不为空
- c语言全局变量和局部变量问题汇总
- javascript之处理全局变量-json对象
- JavaScript-学习一全局变量