简单数据类型 与 复杂数据类型
简单数据类型
简单数据类型有5种,Number,String,Boolean,undefined,null
简单数据类型存放在栈里面,里面直接开辟一个空间,存放的是值
复杂数据类型
复杂类型,又叫做引用类型,在存储对象是存储的仅仅是地址(引用),因此叫又引用类型
复杂类型是通过new关键字创建的对象,如Object,Array,Date等
复杂数据类型存放在堆里面,首先在栈里面存放地址(十六进制表示),地址在指向堆里面的实例,真正的对象实例存放在堆空间中
函数的形参也可以看成是一个变量,当我们把引用类型变量传递给形参时,其实是把变量在栈空间保存的堆地址复制给了形参,形参和实参其实保存的是同一个堆地址,所以操作的是同一个对象。