基本数据类型和引用数据类型
基本数据类型,直接在栈内存中存储,按照值来访问。当赋值的时候,赋值的就是数据本身的值。基本数据类型的值是互相独立的,修改一个不会影响别的变量。
let a=2;
let b=a;
b=5;
console.log(a) //a=2
console.log(b) //b=5
引用数据类型,在栈内存中保存的实际是对象在堆内存中的引用地址,通过这个引用地址可以快速查找到保存到堆内存的对象的值。在引用数据类型赋值的时候,会复制栈内存的引用地址,引用地址一样所以实际指向的是同一个堆内存的值。所以一个改,会影响其他的引用类型变量。
let arr1=[1,2,3];
let arr2=arr1l
arr2[0]=10;
console.log(arr1) //arr1=[10,2,3]
console.log(arr1) //arr2=[10,2,3]