在学习数据类型中,必须要了解到堆和栈的区别,简单的说一下堆和栈的区别
堆和栈有什么区别:
栈: 先进先出 像杯子的水先进的后出
堆: 先进的先出 像水管先进的先出
栈赋值的是复制例如:
var a = 10;
var b = a;
console.log(b);//10
//如果a的值改变,b的值不会变;
a = 15;
console.log(b);//10
堆是和栈结合使用:
//数组的是放在堆里,但变量a拿到的是一个地址索引,指向这个数组
var a = [1,2,3];
//把地址索引复制给b,不是复制数据内容
var b = a;
console.log(b);//[1,2,3]
//从新给a赋值,a改变了地址,无法查看原数据
a = [3,4,5];
console.log(b);[1,2,3]