JS - 初识作用域
作用域
2022-09-29
----------------
全局作用域:函数之外声明的变量
局部作用域:代码块里
变量定义的位置 - 函数内外
- ES2015
let:
重新 声明变量
1 { 2 let x = 10; 3 } 4 // 此处不可以使用 x 5 // 使用 let 关键字重新声明变量可以解决这个问题。在块中重新声明变量不会重新声明块外的变量:
- 在相同的作用域,不允许通过 let 重新声明一个 let / var
const
不可以重新赋值
块作用域
1 var x = 10; 2 // 此处,x 为 10 3 { 4 const x = 6; 5 // 此处,x 为 6 6 } 7 // 此处,x 为 10
必须在声明时赋值
没有定义常量值,定义了对值的常量引用
· 不能更改常量原始值
· 常量对象可以更改
可以更改常量对象的属性
无法重新为常量对象赋值
· 可以更改常量数组的元素
重新声明
在程序中的任何位置都允许重新声明 JavaScript var
变量:
在同一作用域或块中,不允许将已有的 var
或 let
变量重新声明或重新赋值给 const
:
在同一作用域或块中,为已有的 const 变量重新声明声明或赋值是不允许的:
在另外的作用域或块中重新声明 const
是允许的:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了