2 分钟 JS 面试 / 值 vs 引用

2025-06-08

2 分钟 JS 面试 / 值 vs 引用

问题:
解释按值传递和按引用传递。

快速回答:
在 JavaScript 中,所有原始值都按值传递,但所有非原始类型都按引用传递。这意味着您可以更改参数,并且这种更改将被隔离(没有副作用)。

更长的答案:
因此JavaScript 中的原始类型undefined、、和其他BooleanString

结构类型(非原始)包括ObjectFunction。需要指出的是,数组和其他结构Object也具有类型。

这意味着当您将某些值传递给函数时,其行为将取决于其类型。

碳 (4)

现实生活中的例子:
在现实生活中的应用程序中,更改任何提供的函数参数时都需要格外小心,因为像这样的调试问题可能非常棘手且耗时。

碳 (5)

您可以通过以下方式解决此问题:

碳 (3)

更新:正如 @lukaszahradnik 在评论中提到的,它实际上是基于“分享”,而不是“引用”。谢谢你澄清这一点!🙏


其他阅读材料:

此外,我会在这里和Twitter上发布更多有趣的东西,让我们成为朋友👋

鏂囩珷鏉ユ簮锛�https://dev.to/hexnickk/js-interview-in-2-minutes-value-vs-reference-5a8k
PREV
一个简单的 CSS 技巧,无需在媒体查询中添加大量代码即可立即使网站响应
NEXT
2 分钟内完成 JS 面试 / 这个🤯