JavaScript基础学习之-JavaScript权威指南-第三章类型、值和变量

来源:互联网 发布:淘宝全球购认证商家 编辑:程序博客网 时间:2024/05/16 10:31

一、 变量作用域

变量的作用域就是程序源代码中定义这个变量的区域。
全局变量拥有全局作用域。
在函数内声明的变量只在函数体内有定义。函数体内是块级作用域,在声明他们之外的地方是不可见的,只要是在函数体内,不管花括号的位置,都会有意义。
局部变量的优先级高于同名的全局变量。

二、 函数作用域和函数声明提前

类似c语言的书籍中都是花括号的体内时块级作用域,但是JavaScript没有块级作用域都是函数作用域。

函数声明提前:将所有的函数声明都提前到顶部,赋值(初始化)留到原先的位置。

三、作为属性的变量

使用var创建的对象是不可配置,不能使用delete删除。
全局对象可以使用delete删除。

四、 作用域链

每段JavaScript代码都会有与之相关的作用域链,这个作用域链就是一个对象链表或是对象列表。这组对象定义了这段代码(作用域)中的变量。
变量解析:依次从作用域链中查找对象的对象的属性(即变量)的值。
定义函数时就是保存作用域链,当调用函数时就新增一个对象来存储局部变量,并将这个对象添加到作用域链上,使用后删除。

0 0
原创粉丝点击