对JS值类型和引用类型的整理

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_35414779/article/details/84064398

Js变量类型:值类型和引用类型

1.值类型占用空间固定,保存在栈中。
2.保存和复制的都是本身
3.用typeof可以检测数据类型
4.基本数据类型数据是值类型

1.引用类型占用空间不固定,保存在堆中。
2.保存的是指向对象的指针。
3.用instanceof去检测数据类型。
4.用new()方法构造出的引用类型。

值传递和引用传递,引用对象保存的不是值,是值的物理地址。(传值和传址)
对象没有被任何指针指向,js的回收机制会将对象销毁并回收内存。
引用类型的=比较都是比较地址。不同的对象包含着相同的值也不会相等。可以将对象转换为字符串在去比较对象是否相等,这时候值相等的对象就会相等。

基本数据类型传入函数,函数会把数据拷贝复制给函数的参数变量。

纯函数是,给定一个输入只有唯一的输出,并且不影响外部环境变量。

JSON.parse会形成新的对象,所以在深拷贝的时候可以使用JSON.stringify转换为字符串再通过JSON.parse转化为新的对象,但是有局限是对象的属性值不能为undefined。

Js数据类型,基础数据类型布尔,string,number。特殊数据类型null,undefined。引用数据类型object

猜你喜欢

转载自blog.csdn.net/qq_35414779/article/details/84064398