JavaScript 函数参数与实参:传递原始类型和非原始类型变量的区别是什么?
2024-10-26 11:04:04
0浏览
收藏
最近发现不少小伙伴都对文章很感兴趣,所以今天继续给大家介绍文章相关的知识,本文《JavaScript 函数参数与实参:传递原始类型和非原始类型变量的区别是什么?》主要内容涉及到等等知识点,希望能帮到你!当然如果阅读本文时存在不同想法,可以在评论中表达,但是请勿使用过激的措辞~

函数参数和实参的关系
当我们传递变量值给函数时,会遇到关于函数参数和实参之间关系的问题。在 javascript 中,函数实参与形参的关系取决于所传递变量的类型。
传递原始类型变量
在传递原始类型变量(如字符串、数字、布尔值)时,形参得到的是实参值的副本。这意味着对形参的任何修改都不会影响实参。例如:
function changenum(num) {
num = 10;
console.log("num:", num); // 输出: 10
}
const x = 5;
changenum(x);
console.log("x:", x); // 输出: 5传递非原始类型变量
当传递非原始类型变量(如数组、对象)时,形参得到的不是值的副本,而是对原对象的引用。这意味着对形参的任何修改都会影响实参。例如:
function changeArray(array) {
array[0] = 10;
console.log("array:", array); // 输出: [10, 2, 3]
}
const a = [1, 2, 3];
changeArray(a);
console.log("a:", a); // 输出: [10, 2, 3]在上面的示例中,当我们调用 changearray 函数时,变量 a 的值被传递给 array 参数。array 参数得到的不是 a 值的副本,而是对 a 数组的引用。因此,对 array 的修改也影响了 a 数组。
因此,了解函数参数和实参之间的关系对于正确地处理变量至关重要。在传递原始类型变量时,不需要担心对实参的影响,但是在传递非原始类型变量时,应该意识到对形参的修改也会修改实参。
今天关于《JavaScript 函数参数与实参:传递原始类型和非原始类型变量的区别是什么?》的内容就介绍到这里了,是不是学起来一目了然!想要了解更多关于的内容请关注golang学习网公众号!
开箱即用的 Go 框架解决方案推荐
- 上一篇
- 开箱即用的 Go 框架解决方案推荐
- 下一篇
- PHP函数如何接收类型注解参数?
查看更多
最新文章
-
- 文章 · 前端 | 4分钟前 |
- LinuxHelix加速技巧与重构指南
- 182浏览 收藏
-
- 文章 · 前端 | 5分钟前 | 顶层await
- 顶层await用法详解与实战技巧
- 288浏览 收藏
-
- 文章 · 前端 | 6分钟前 |
- 表单数据保留与自动清理技巧
- 120浏览 收藏
-
- 文章 · 前端 | 23分钟前 |
- EventLoop机制解析与执行顺序控制技巧
- 392浏览 收藏
-
- 文章 · 前端 | 24分钟前 |
- Tailwind任意值类解决方法详解
- 321浏览 收藏
-
2. CSS 样式使用 ::after 伪元素来在图片上叠加文字:
.im">

