JavaScript 变量:let 和 const 该用谁?

JavaScript 变量:let 和 const 该用谁?

生活中的例子 01

游戏得分:分数会一直变,所以用 let。

生活中的例子 02

圆周率 (π):数学常数永远是 3.14...,所以用 const。

生活中的例子 03

用户的出生年份:这个永远不会变,必须用 const。

生活中的例子 04

购物车商品数量:随时可能增加或减少,用 let。

新手入门指南

COPY

嘿,朋友!来聊聊 JS 的"盒子"

欢迎来到 JavaScript 的世界!今天我们要解决一个让无数新手纠结的问题:写代码时,我到底该用 let 还是 const

别被这两个英文单词吓到了,其实它们的道理就像你整理房间一样简单。

1. 想象你在搬家(生活中的类比)

想象你正在打包东西搬家,你手里有两种箱子:

  • 普通的开口纸箱 (`let`)

你在箱子上贴个标签叫"今天的零食"。你可以把里面的薯片拿出来,换成饼干,再换成苹果。里面的东西是可以随时更换的。

  • 透明的密封展示柜 (`const`)

你在柜子上贴个标签叫"我的奖杯"。一旦把奖杯放进去,你就用强力胶把柜子封死了。里面的东西放进去就不能换了(至少不能整个换掉)。

在代码里,这就是 letconst 的区别。

2. 它们到底是啥?

  • `let` :代表 "Let it change"(让它变)。当你定义一个变量,并且你知道以后肯定会修改它的值时,就用它。
  • `const` :代表 "Constant"(常量/不变)。当你定义一个值,并且你想向全世界宣布:"嘿!这个值永远不许改!"时,就用它。

3. 代码是怎么写的?

让我们来看看实际的代码长什么样。这比你想象的要容易得多。

`let` 的例子:游戏计分

复制代码
// 游戏开始了,初始分是 0
let score = 0;

// 你打中了一个怪兽!
score = 10; 
// 没问题!因为是用 let 定义的,盒子是开口的,我们可以改写它。

console.log(score); // 输出:10

`const` 的例子:出生年份

复制代码
// 你的出生年份是固定的
const birthYear = 1998;

// 试图修改它...
birthYear = 2000; 
// ❌ 报错!电脑会大喊:“Assignment to constant variable.”
// 意思就是:兄弟,这是个密封柜子,你不能改!

4. 一个新手最容易犯的错误

很多初学者觉得:"既然 let 那么灵活,我干脆全部都用 let 好了,省得报错!"

这是一个巨大的陷阱!

最佳实践是:默认全都用 `const`。

为什么?因为 const 会保护你不小心改掉不该改的东西。当你写代码时,如果发现某个变量确实需要变化(比如循环里的计数器 i,或者上面的 score),这时候再回头把它改成 let

这样做会让你的代码更安全,读你代码的人也更清楚:"哦,这个是用 const 定义的,所以我知道它在后面绝对不会变。"

5. 总结一下

  • 如果要变,用 `let`
  • 如果不变,用 `const`
  • 如果不确定,先写 `const`,等报错了再改也不迟!

哪怕你是编程小白,只要记住"密封柜"和"开口箱"的区别,你就已经掌握了现代 JavaScript 最核心的规范之一啦!

相关推荐
麦麦大数据2 小时前
F059 vue+flask酒店对比系统
前端·vue.js·flask·携程·酒店对比·飞猪·同程
开发者小天2 小时前
React中的useState传入函数的好处
前端·javascript·react.js
Violet_YSWY2 小时前
Vue import.meta.env 讲解
前端·javascript·vue.js
暴富暴富暴富啦啦啦2 小时前
实现自定义指令 v-scrollBar,用于动态显示/隐藏滚动条,提升用户体验
前端·javascript·vue.js
_Kayo_2 小时前
css 练习笔记1
前端·css·笔记
weixin_440730502 小时前
css的选择器
前端·css·css3
消失的旧时光-19432 小时前
从前端路由到 Android ARouter:观察者模式在不同平台的同一种落地
android·前端·观察者模式·flutter
Shirley~~2 小时前
PPTist 画布工具栏
开发语言·前端·javascript
雨季~~2 小时前
前端使用ffmpeg进行视频格式转换 (WebM → MP4)
前端·typescript·ffmpeg·vue