JS中的堆和栈有什么区别


在学习数据类型中,必须要了解到堆和栈的区别,简单的说一下堆和栈的区别

堆和栈有什么区别:

                   栈: 先进先出       像杯子的水先进的后出 

                   堆: 先进的先出    像水管先进的先出  

栈赋值的是复制例如:

      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]

    

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM