You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JavaScript中变量标识符如何关联对应内存地址?

关于JavaScript标识符与内存地址的关联逻辑

当你声明const num = 10时,JavaScript的执行流程是这样的:

  • 当前代码所在的执行上下文会创建一个叫**变量环境(Variable Environment)**的内部结构,它本质就是一组键值对集合。
  • 由于10是基本类型值,JS会直接在栈内存中分配一块空间存储它。
  • 最后在变量环境里添加一条映射关系:键是标识符num,值是存储10的那块栈内存的地址。

当你调用console.log(num)时:
JS会先在当前执行上下文的变量环境里查找num这个键,找到对应的内存地址后,直接去该地址取出值10,再把它传递给console.log完成输出。

简单来说,标识符(比如num)确实会和它对应的内存地址一起被存储——就存在执行上下文的变量环境里,这个环境是JS引擎在代码运行时自动创建和维护的,不需要开发者手动操作。

补充一点:如果是引用类型(比如const obj = {a:1}),栈内存里会存储指向堆内存中对象的地址,变量环境里的obj映射的就是这个栈地址,JS通过它间接找到堆里的对象。

内容的提问来源于stack exchange,提问作者Ahammed Zulaikh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.28 11:42:03