基本数据类型(6个):number string boolean null undefined symbol (保存的是值)
引用数据类型:object function array Date RegExp(注:引用数据类型统称为object) (保存的一个地址)
存放的地址:基本数据类型存放在栈中,引用数据类型存放在堆中(在内存中开辟了一个空间)
区别:
1.基本数据类型一个改变的时候不会影响其他的改变
var a=123
var b=a
a++
console.log(a)//124
console.log(b)//123
这个列子说明a的变化不会引起b的变化
引用数据类型一个值的改变会影响其他值的改变(保存的为同一个对象的引用)
var obj1=New object
var obj2=obj1
obj1.name='zhangsan'
console.log(obj1)//zhangsan
console.log(obj2)//zhangsan
这个列子说明obj1的变化会引起obj2的变化
将obj设置为null时怎样变化
var obj1=New object
var obj2=obj1
obj2=null
console.log(obj1)//zhangsan
console.log(obj2)//null
注:当我们在js中new的时候就是在内存中开辟一个空间
var obj=new object
obj.name='sss'
(obj为变量名 变量值为一个指向堆中的地址 开辟的空间才是存放值所在的地方)

若将obj1=null此时obj不会改变,只是断开了obj1与空间的链接