WEB开发网
开发学院网页设计JavaScript 高质量JavaScript代码书写基本要点 阅读

高质量JavaScript代码书写基本要点

 2010-10-25 12:58:02 来源:WEB开发网   
核心提示:忘记var的副作用(Side Effects When Forgetting var)隐式全局变量和明确定义的全局变量间有些小的差异,就是通过delete操作符让变量未定义的能力,高质量JavaScript代码书写基本要点(4),» 通过var创建的全局变量(任何函数之外的程序中创建)是不能被删除的,&ra

忘记var的副作用(Side Effects When Forgetting var)
隐式全局变量和明确定义的全局变量间有些小的差异,就是通过delete操作符让变量未定义的能力。

» 通过var创建的全局变量(任何函数之外的程序中创建)是不能被删除的。
» 无var创建的隐式全局变量(无视是否在函数中创建)是能被删除的。
这表明,在技术上,隐式全局变量并不是真正的全局变量,但它们是全局对象的属性。属性是可以通过delete操作符删除的,而变量是不能的:

// 定义三个全局变量
var global_var = 1;
global_novar = 2; // 反面教材
(function () {
  global_fromfunc = 3; // 反面教材
}());

// 试图删除
delete global_var; // false
delete global_novar; // true
delete global_fromfunc; // true

// 测试该删除
typeof global_var; // "number"
typeof global_novar; // "undefined"
typeof global_fromfunc; // "undefined"
在ES5严格模式下,未声明的变量(如在前面的代码片段中的两个反面教材)工作时会抛出一个错误。

访问全局对象(Access to the Global Object)


上一页  1 2 3 4 5 6 7 8 9  下一页

Tags:高质量 JavaScript 代码

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接