数据类型分为两种:
- 基本数据类型
指的是保存在栈内存中的简单数据段
---字符串,数值,布尔,undefined,null
- 引用数据类型
指的是那些保存在堆内存中的对象,意思是,变量中保存的实际上只是一个指针,这个指针指向内存堆中实际的值
----function,array,object
访问方式
- 基本类型值:按值访问,操作的是他们实际保存的值;
- 引用类型值:按引用访问,当查询时,我们需要先从栈中读取内存地址,然后再顺藤摸瓜地找到保存在堆内存中的值;
复制方式
- 基本类型值:一个变量复制给另一个变量时,改变其中一个变量互不影响
- 引用类型值: 复制的是存储在栈中的指针,将指针复制到栈中为新变量分配的空间中,而这个指针副本和原指针执行存储在堆中的同一个对象,复制操作结束后,两个变量实际上将引用同一个对象;因此改变其中的一个,将影响另一个;
也可查阅该文章,谢谢该文作者