JavaScript变量可以用来保存两种类型的值:基本类型和引用类型。
基本类型:Undefined、Null、Boolean、Number和String。
基本类型值和引用类型值具有以下特点:
①基本类型的值在内存中占据固定大小的内存空间,因此被保存在栈中;
②基本类型的值进行复制时,相当于一个copy过程,会创建这个值的一个副本;
③引用类型的值是对象,保存在堆内存中
④包含引用类型值得变量实际上包含的并不是对象本身,而是一个指向该对象的指针;
⑤从一个变量向另一个变量复制引用类型的值,复制的其实是指针,因此两个变量最终都指向同一个对象;
⑥确定一个值是哪种基本类型可以使用typeof操作符,而确定一个值是哪种引用类型可以使用instanceof操作符。