[Effective JavaScript 笔记] 第9条:始终声明局部变量
2016-05-18 10:07
495 查看
如果忘记将变量声明为局部变量,该变量将会隐式地转变为全局变量
function swap(a,i,j){
temp=a[i];
a[i]=a[j];
a[j]=temp;
}
尽管该程序没有使用var声明temp变量,执行不会出错,而且temp会被添加到全局使用域中,变成一个全局变量。
修正过的代码
function swap(a,i,j){
var temp=a[i];
a[i]=a[j];
a[j]=temp;
}
故意创建全局变量是不好的风格,意外创建是一种灾难。
可以使用lint工具对代码进行检测。使用工具可以提高你的js代码的质量,是值得去花时间花一点的。可以避免许多小的错误问题。
[align=left]考虑使用lint等工具帮助检查代码的变量[/align]
function swap(a,i,j){
temp=a[i];
a[i]=a[j];
a[j]=temp;
}
尽管该程序没有使用var声明temp变量,执行不会出错,而且temp会被添加到全局使用域中,变成一个全局变量。
修正过的代码
function swap(a,i,j){
var temp=a[i];
a[i]=a[j];
a[j]=temp;
}
故意创建全局变量是不好的风格,意外创建是一种灾难。
可以使用lint工具对代码进行检测。使用工具可以提高你的js代码的质量,是值得去花时间花一点的。可以避免许多小的错误问题。
提示
始终使用var声明新的局部变量[align=left]考虑使用lint等工具帮助检查代码的变量[/align]
相关文章推荐
- 鼠标滚动事件,侧边导航js效果
- 写一段json代码报错java.lang.NullPointerException
- JavaScript DOM 中setAttribute()的使用 以及点击鼠标返回函数的处理
- JavaScript DOM 中setAttribute()的使用 以及点击鼠标返回函数的处理
- JavaScript DOM 中setAttribute()的使用 以及点击鼠标返回函数的处理
- JavaScript DOM 中setAttribute()的使用 以及点击鼠标返回函数的处理
- JavaScript DOM 中setAttribute()的使用 以及点击鼠标返回函数的处理
- JavaScript DOM 中setAttribute()的使用 以及点击鼠标返回函数的处理
- JavaScript DOM 中setAttribute()的使用 以及点击鼠标返回函数的处理
- JavaScript DOM 中setAttribute()的使用 以及点击鼠标返回函数的处理
- JavaScript DOM 中setAttribute()的使用 以及点击鼠标返回函数的处理
- JavaScript DOM 中setAttribute()的使用 以及点击鼠标返回函数的处理
- JavaScript DOM 中setAttribute()的使用 以及点击鼠标返回函数的处理
- JavaScript DOM 中setAttribute()的使用 以及点击鼠标返回函数的处理
- JavaScript DOM 中setAttribute()的使用 以及点击鼠标返回函数的处理
- JavaScript DOM 中setAttribute()的使用 以及点击鼠标返回函数的处理
- 异步编程之Javascript Promises 规范介绍
- js登录与layout菜单布局
- JavaScript开发之路02(Sencha Touch使用时常见问题及解决办法)
- jsp 取 map<String,List>值