JS的基础类型与引用类型

js两种类型:

1.   ECMAScript变量包括两种不同类型的值:基本类型值、引用类型值;

2.   基本类型值:指的是保存在栈内存中的简单数据段;

3.   引用类型值:指的是那些保存在堆内存中的对象,意思是,变量中保存的实际上仅仅是一个指针,这个指针运行内存中的还有一个位置,由该位置保存对象;

两种訪问方式:

4.   基本类型值:按值訪问。操作的是他们实际保存的值;

5.   引用类型值:按引用訪问,当查询时,我们须要先从栈中读取内存地址,然后再顺藤摸瓜地找到保存在堆内存中的值。



两种类型复制

 

1.   基本类型变量的复制:从一个变量向一个变量复制时。会在栈中创建一个新值。然后把值拷贝到为新变量分配的位置上。




 

1.   引用类型变量的复制:复制的是存储在栈中的指针。将指针拷贝到栈中未新变量分配的空间中,而这个指针副本和原指针运行存储在堆中的同一个对象;

2. 复制操作结束后,两个变量实际上将引用同一个对象。因此改变当中的一个。将影响还有一个;



函数參数的传递:

 

1.   ECMA中全部函数的參数都是按值传递的;



两种变量类型检測

 

1.   Typeof操作符是检測基本类型的最佳工具。

2.   假设变量值是nul或者对象,typeof 将返回“object”;

3.   Instanceof用于检測引用类型,能够检測到详细的,它是什么类型的实例。

4.   假设变量是给定引用类型的实例,instanceof操作符会返回true;



 

posted on 2016-03-25 08:17  gcczhongduan  阅读(173)  评论(0)    收藏  举报