美文网首页
JavaScript变量——栈内存or堆内存

JavaScript变量——栈内存or堆内存

作者: 自度君 | 来源:发表于2019-02-12 11:43 被阅读0次

    成员变量在堆,局部变量在栈。堆是线程都可以访问的,而不同线程的栈是无法互相访问的。
    成员变量可以理解为属性,对象的属性一般都叫成员变量,js所谓的全局变量也叫成员变量,window的成员变量。
    function与其他块内部的变量为局部变量

    与其他语言不通,JS的引用数据类型,比如数组Array,它们值的大小是不固定的。引用数据类型的值是保存在堆内存中的对象。JavaScript不允许直接访问堆内存中的位置,因此我们不能直接操作对象的堆内存空间。在操作对象时,实际上是在操作对象的引用而不是实际的对象。因此,引用类型的值都是按引用访问的。这里的引用,我们可以粗浅地理解为保存在栈内存中的一个地址,该地址与堆内存的实际值相关联。

    https://www.jianshu.com/p/996671d4dcc4
    https://juejin.im/entry/589c29a9b123db16a3c18adf

    相关文章

      网友评论

          本文标题:JavaScript变量——栈内存or堆内存

          本文链接:https://www.haomeiwen.com/subject/jisvqqtx.html