【javascript基础】延长作用域链
2012-11-16 11:59
591 查看
延长作用域链,意思是,在当前作用域链的前端临时添加一个变量对象。该变量对象会在代码执行完之后移除。
这通常发生在两个语句中,
try-catch的catch语句
with语句
对于with语句而言,其变量对象中包含为指定对象的所有属性和方法所作的变量声明。对于catch而言,其变量对象包含被抛出错误对象的声明。
举个例子:
+function(){
try{
alert(x);
}catch(e){
console.log(e);
}
console.log(e);
}()
标准浏览器,
而IE8,结果如下:
在IE中,catch语句之外也可以访问到错误对象,很奇怪
这通常发生在两个语句中,
try-catch的catch语句
with语句
对于with语句而言,其变量对象中包含为指定对象的所有属性和方法所作的变量声明。对于catch而言,其变量对象包含被抛出错误对象的声明。
举个例子:
+function(){
try{
alert(x);
}catch(e){
console.log(e);
}
console.log(e);
}()
标准浏览器,
而IE8,结果如下:
在IE中,catch语句之外也可以访问到错误对象,很奇怪
相关文章推荐
- javascript延长作用域链
- javascript:with的用法以及延长作用域链
- 深入理解javascript原型和闭包(14)——从【自由变量】到【作用域链】
- JavaScript全面了解作用域(基础、this、闭包、继承)之一
- JavaScript高级之词法作用域和作用域链
- 深入理解javascript原型和闭包(14)——从【自由变量】到【作用域链】
- with延长作用域链
- JavaScript作用域链其三:作用域链特征
- JavaScript高级内容笔记:原型链、继承、执行上下文、作用域链、闭包
- JavaScript 基础函数_深入剖析变量和作用域
- Javascript基础_11作用域与块级作用域
- javascript中函数的执行环境、作用域链、变量对象与活动对象
- javascript精雕细琢(三):作用域与作用域链
- 深入理解javascript原型和闭包(14)——从【自由变量】到【作用域链】
- 深入理解javascript原型和闭包(14)——从【自由变量】到【作用域链】
- 关于Javascript作用域链的八点总结
- 深入理解javascript原型和闭包(14)——从【自由变量】到【作用域链】
- JavaScript作用域链
- Javascript作用域链的总结
- JavaScript基础2——变量、作用域和内存