ECMAScript 变量可能包含两种不同数据类型的值。基本类型和引用类型。基本类型值指的是简单的数据段,而引用类型值指的就是那些可能有多个值构成的对象。
在将一个值赋给变量时,解析器必须确定这个值是基本数据类型还是引用数据类型。
基本数据类型包括 undefined ,number ,null ,string,boolean。
引用数据类型的值保存在内存中的对象。javascript不允许直接访问内存中位置,也就是说不能直接操作对象的内存空间。在操作对象时,实际上是在操作对象的引用而不是实际的对象为此,引用类型的值是按引用访问的。object , function
特点:
基本类型值在内存中占据固定大小的空间,因此被保存在栈内存中。
从一个变量想另一个变量复制基本数据的值,会创建这个值得的一个副本。
引用类型的值是对象,保存在堆内存中。
从一个变量想另个变量引用类型的值,复制的其实是指针,因此两个变量最终指向都是同一个对象。