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 最核心的规范之一啦!

相关推荐
青青家的小灰灰15 小时前
深入理解 JavaScript 箭头函数:从语法糖到核心机制
前端·javascript·面试
cxxcode15 小时前
Web Vitals 数据采集机制分析
前端
sniper16 小时前
AI+Shopify 前端开发:实战一年后,聊聊 AI Agent 和前端的生死局
前端
南囝coding16 小时前
OpenClaw 到底能干什么?可以看看这 60 个真实用例
前端·后端
重庆穿山甲16 小时前
Java开发者的大模型入门:AgentScope Java组件全攻略(二)
前端·后端
怪侠_岭南一只猿16 小时前
爬虫阶段一实战练习题:爬取豆瓣电影 Top250 复盘
css·经验分享·爬虫·python·学习·正则表达式
我爱吃土豆111916 小时前
从零到上架:Chrome 新标签页生产力扩展 FocusTab
前端·产品
敲代码的约德尔人16 小时前
我在 3 个项目中踩坑后,才真正理解了 JavaScript 设计模式
前端·javascript
子淼81216 小时前
Kali Linux 入门指南:基础操作与常用指令解析
前端
QYR市场调研16 小时前
低密度聚乙烯市场竞争格局变化趋势
前端