深入理解 JavaScript 的按值传递 (Pass by Value) 和按引用传递 (Pass by Reference) 在基本类型和对象类型上的行为。

哈喽,各位未来的代码大师们,欢迎来到“JavaScript 传值奥秘大揭秘”讲座!今天咱们不搞虚的,直接上干货,一起扒一扒 JavaScript 里面“按值传递”和“按引用传递”这俩兄弟的底裤。 开场白:别怕,没那么玄乎! 很多小伙伴一听到“按值传递”和“按引用传递”,头皮就开始发麻,感觉像进了迷宫。其实呢,它们就像咱们平时买东西一样,一个是你给了别人一张钞票,另一个是你给了别人一张购物卡。钞票给了就没了,购物卡给了,里面的余额要是变了,你也知道。 JavaScript 里的传值也是这个道理,理解了这一点,就成功了一半。 第一幕:基本类型——老实的“按值传递” 咱先从基本类型说起,它们包括: Number(数字) String(字符串) Boolean(布尔值) Null(空值) Undefined(未定义) Symbol (ES6 新增,后面有时间再聊) 这些家伙都是老实人,用的是“按值传递”。啥意思呢?就是把它们的值复制一份,然后传递给函数。函数里面怎么折腾这份复制品,都不会影响到原来的变量。 来,上代码: let num1 = 10; let num2 = num1; // 将 …