当执行流进入下列任何一个语句时,作用域链将得到延长:
* 1) try-catch语句的catch块
* 2) with语句
此两个语句会在作用域链的前端添加一个变量对象。对with来说,其变量对象中包含着指定对象的所有属性和方法所作的变量申明;对catch来说,
其变量对象中包含的是被抛出的错误对象的申明。这些标量对象都是只读的,因此在with和catch语句中申明的变量都会被添加到所在执行环境的变量对象
中。
这是《JavaScript 高级程序设计第二版》中说明的一句话。可是,with延伸的作用域,标量对象真的是只读的吗?还是我理解的这个标量的意义不对?
不瞎说了,把自己的测试代码发一下就可:
//会跳转
(
function
(
)
{
with
(
location)
{
href=
'http://www.360.cn'
;
}
}
)
(
)
;
// b
(
function
(
)
{
var
obj =
{
a:
'a'
}
;
with
(
obj)
{
a =
'b'
;
}
alert
(
obj.a
)
;
}
)
(
)
;
原文地址:http://www.xiaoxiaozi.com/2011/03/02/2018/
分享到:
相关推荐
javascript变量作用域 希望对大家有帮助
对javascript执行环境,作用域的深层次理解,
理解JavaScript变量作用域.pdf 本人还有几十本经典javascript书籍以及无数javascript资料,要的加我qq 568094881,本人网址:www.maoshanhai.com
a、JavaScript的变量作用域是基于其特有的作用域链的。 b、JavaScript没有块级作用域。 c、函数中声明的变量在整个函数中都有定义。 javascript的变量作用域,与平时使用的类C语言不同,例如C#中的代码: static ...
作用域是JavaScript最重要的概念之一,想要学好JavaScript就需要理解JavaScript作用域和作用域链的工作原理。今天这篇文章对JavaScript作用域和作用域链作简单的介绍,希望能帮助大家更好的学习JavaScript。任何程序...
Javascript的词法作用域分析.pdf
作用域是JavaScript最重要的概念之一,想要学好JavaScript就需要理解JavaScript作用域和作用域链的工作原理。今天这篇文章对JavaScript作用域和作用域链作简单的介绍,希望能帮助大家更好的学习JavaScript。 ...
全局(global)变量的作用域是全局性的,在javascript中,它的存在都有定义。而在函数之内声明的变量,就只在函数体内部有定义。它们是局部(local)变量,作用域是全局性的。函数的参数也是局部变量,它们只在函数体...
基于JavaScript的变量作用域的辨析.pdf
深化理解javascript作用域其次篇之词法作用域和动态作用域_.docx
作用域是JavaScript最重要的概念之一,想要学好JavaScript就需要理解JavaScript作用域和作用域链的工作原理。今天这篇文章对JavaScript作用域示例详解的介绍,希望能帮助大家更好的学习JavaScript。 任何程序设计...
讨论javascript作用域,很多人被javascript作用域搞迷糊了,这个应该有用。
JavaScript 作用域 和作用域链作用域作用域链 作用域 作用域就是变量与函数的可访问范围,作用域控制着变量与函数的可见性和生命周期。换句话说,作用域决定了代码区块中变量和其他资源的可见性。 function fun() { ...
作用域和作用域链在Javascript和很多其它的编程语言中都是一种基础概念。但很多Javascript开发者并不真正理解它们,但这些概念对掌握Javascript至关重要。 正确的去理解这个概念有利于你去写更好,更高效和更简洁的...
前端面试题,包含JavaScript的闭包,作用域,原型,原型链,上下文环境以及DOM,BOM封装函数深度克隆,以及一些常见的·JS问题,试题简单但是容易混淆,作为前端工程师必考题
深化浅析JavaScript中的作用域和上下文_.docx
深入了解JavaScript,优化作用域链(2).pdf
作用域是JavaScript最重要的概念之一,想要学好JavaScript就需要理解JavaScript作用域和作用域链的工作原理。今天这篇文章对JavaScript作用域和作用域链作简单的介绍,希望能帮助大家更好的学习JavaScript。 ...
每种编程语言,其变量都有一定的有效范围,超过...大多数现代程序设计语言都是采用静态作用域规则,JavaScript就是采用的这种作用域。 采用静态作用域的语言中,基本都是最内嵌套作用域规则:由一个声明引进的标识符在