如果忘记将变量声明为局部变量,该变量将会隐式地转变为全局变量 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工具对代…