在函数前面加分号——;(function(){})()
2013-06-10 17:19
99 查看
;(function($,undefined){
//代码...
})()
我们写代码每句的结束可以省略分号,但是分析器的自动分号插入,大多数场景下ASI会正确插入分号,不会产生错误。但ASI的分号插入规则非常复杂且很难记住,因此《编写可维护的Javascript》一书的作者推荐大家不要省略分号。其实很多新手都不会省略。
一:这里的分号的作用:防止多文件集成成一个文件后,高压缩出现语法错误。
二:js里面没有块级作用域,因而用(function(){})()闭包模拟作用域块,可以对变量起保护作用。
三:undefined可以是1.只声明变量未初始化,如var a ; 2. 尚未定义的变量 如alert(b);函数中查找变量先搜寻内部变量,至最外层,undefined是搜索到全局环境时候仍未找到,我们都知道window是全局变量。在google的控制台输入window.undefined;也可看出undefined是window的一个属性。而这里将undefined声明为局部变量,当函数内要将变量与undefined比较的时候,就不需要搜索window,从而提升了性能。
undefined派生于null,当输入undefined==null时,结果为true.一般不会定义变量为undefined,要声明空对象,可以 var a = null;
//代码...
})()
我们写代码每句的结束可以省略分号,但是分析器的自动分号插入,大多数场景下ASI会正确插入分号,不会产生错误。但ASI的分号插入规则非常复杂且很难记住,因此《编写可维护的Javascript》一书的作者推荐大家不要省略分号。其实很多新手都不会省略。
一:这里的分号的作用:防止多文件集成成一个文件后,高压缩出现语法错误。
二:js里面没有块级作用域,因而用(function(){})()闭包模拟作用域块,可以对变量起保护作用。
三:undefined可以是1.只声明变量未初始化,如var a ; 2. 尚未定义的变量 如alert(b);函数中查找变量先搜寻内部变量,至最外层,undefined是搜索到全局环境时候仍未找到,我们都知道window是全局变量。在google的控制台输入window.undefined;也可看出undefined是window的一个属性。而这里将undefined声明为局部变量,当函数内要将变量与undefined比较的时候,就不需要搜索window,从而提升了性能。
undefined派生于null,当输入undefined==null时,结果为true.一般不会定义变量为undefined,要声明空对象,可以 var a = null;
相关文章推荐
- 匿名函数function前面的! ~等符号作用小解
- [JavaScript] Script 中 function, variable 的定义会提升到函数执行前面;但是,function 中定义的 global variable 则不会被提升
- 匿名函数function前面的! ~等符号作用小解
- js 立即执行函数,() .则前面的function 是表达式,不能是函数申明
- ECMAScript6的新特性箭头函数(Arrow Function)详细介绍
- Flash8中自定义函数function
- 机器学习笔记-神经网络中激活函数(activation function)对比--Sigmoid、ReLu,tanh
- tr1::function对象作回调函数技术总结
- 函数索引 ORA-30553: The function is not deterministic 解决方法
- freemarker 解决 函数前面 是空值的问题
- 浅出理解静态成员函数(static member function)
- UCHome中关于公共函数(function_common.php)页面的代码分析(二)
- Fatal error: Call to undefined function session_is_registered() 函数已废弃
- 神经网络之激活函数(Activation Function)
- PHP使用empty检查函数返回结果时报Fatal error: Can't use function return value in write context的问题
- Python基础-偏函数 Partial function
- php定义function时,函数名前加“&”符号是什么意思?
- Swift_函数(Function)
- tar ,cpio打包解压. shell脚本for,while,until循环. rpm包管理,select循环菜单,函数function,yum
- python 的函数前面带个杠是什么意思?