变量的两种类型:

1、基本类型。保存在栈内存中的数据,保存在内存中的一个位置。

2、引用类型。栈内存保存的是指向对象的一个指针。实际变量保存于堆内存中。查询引用类型变量时,要先在栈内存中找到变量在堆内存中的地址,然后再顺藤摸瓜找到堆内存中的值。

栈内存中的数据可以顺序访问,堆内存中的数据像是在数据池中,不可顺序访问。

可以给引用类型添加属性和方法,而不可以给基本类型添加。

var person=new Object();

person.name="Nicholas";

alert(person.name);    //"Nicholas"

 

var name="Nicholas";

name.age="27";

aler(name.age);           //undefined

 

复制变量值的过程中,引用类型与基本类型也有所不同。基本类型复制的就是该值,而引用类型复制指针,堆中对象并不增加。

 

var num1=5;

var num2=num1; //直接复制5

 

var obj1=new Object();

var obj2=obj1;

obj1.name="Nicholas";

alert(obj2.name):  //"Nicholas"

posted on 2012-01-19 15:58  Ballad1939  阅读(134)  评论(0编辑  收藏  举报