变量.作用域和内存问题 1.ECMAScript变量可能包含两种不同数据类型的值:基本类型值和引用类型值.基本类型值指的是简单的数据段,引用类型值指的是有多个值构成的对象. 2.动态的属性:定义一个基本类型值和引用类型值的方法是类似的:创建一个变量并为该变量赋值.但是,当这个值保存到变量中以后,对不同类型值可以执行的操作大相庭径.对于引用类型的值,我们可以为其添加属性和方法,也可以改变和删除其属性和方法.如下例子: var person = new Object(): person.name…
目录 变量的引用 执行环境及作用域 作用域链延长 块级作用域 垃圾回收机制 变量的引用 当一个变量保存了基本数据类型时,此时对于变量的操作(赋值,运算)就是操作这个基本数据的本身,就算是赋值操作,赋值时拷贝后的值与之前的值也是相互独立互不影响的. var a = 1; var b = a b++; console.log(a); //1 console.log(b); //2 这非常好理解,但是如果一个变量保存的是一个引用类型的数据,例如对象,那么情况将会不同,这是因为变量保存的并不是对象本身,…