JavaScript 函数传参310
在 JavaScript 中,函数参数是传递给函数的值。函数可以通过其参数来访问和操作这些值。
传递值类型的参数
当以值类型作为参数传递时,JavaScript 会将参数值本身传递给函数。这意味着函数对参数值的任何更改都不会影响函数外部的原始值。```js
function add(a, b) {
a += b;
}
let x = 10;
let y = 5;
add(x, y);
(x); // 输出:10
```
在上面的示例中,add 函数将值 10 和 5 作为参数接收。函数内部,它将参数 a 赋值为 15。然而,这是对函数局部变量的更改,不会影响函数外部的原始变量 x。
传递引用类型的参数
当以引用类型作为参数传递时,JavaScript 将传递对原始对象的引用。这意味着函数对参数对象的任何更改都会修改函数外部的原始对象。```js
function updateObject(obj) {
= "John Doe";
}
let person = {
name: "Jane Doe",
age: 25
};
updateObject(person);
(); // 输出:John Doe
```
在上面的示例中,updateObject 函数将对 person 对象的引用作为参数接收。函数内部,它将对象属性 name 更改为 "John Doe"。由于传递的是对象的引用,因此函数外部的原始 person 对象也会受到更改的影响。
传递参数的规则
传递函数参数时,应遵循以下规则:
参数列表中的第一个参数是第一个传递的参数,依此类推。
传递的参数数量可以少于函数声明中定义的参数数量。未传递的参数将设置为 undefined。
传递的参数数量可以多于函数声明中定义的参数数量。多余的参数将被忽略。
参数类型可以与函数声明中定义的参数类型不同。JavaScript 会自动进行类型转换。
参数的默认值
JavaScript 允许为函数参数设置默认值。默认值在函数调用时没有指定参数值时使用。```js
function greet(name = "Guest") {
("Hello, " + name + "!");
}
greet(); // 输出:Hello, Guest!
greet("John Doe"); // 输出:Hello, John Doe!
```
在上面的示例中,greet 函数将 name 参数的默认值设置为 "Guest"。当调用函数时,如果没有指定 name 参数,则将使用默认值 "Guest"。
剩余参数
剩余参数用于将多余的参数收集到一个数组中。剩余参数必须放在参数列表的最后。```js
function sum(...numbers) {
let total = 0;
for (let number of numbers) {
total += number;
}
return total;
}
(sum(1, 2, 3, 4, 5)); // 输出:15
```
在上面的示例中,sum 函数使用剩余参数 numbers 收集所有传递的参数。然后,它循环遍历 numbers 数组,将每个数字相加并返回结果。
函数参数是函数的重要组成部分,用于向函数传递数据。JavaScript 支持传递值类型和引用类型参数,并允许设置默认值和收集剩余参数。通过理解函数参数,开发人员可以创建更灵活、更可重用的代码。
2025-01-15

Vim正则表达式与Perl兼容模式详解
https://jb123.cn/perl/65659.html

微信小程序开发:深入解析WXML、WXSS与JavaScript的协同
https://jb123.cn/jiaobenyuyan/65658.html

Perl电池:深入理解Perl的模块化优势及其应用
https://jb123.cn/perl/65657.html

脚本语言的运行机制:无需源码也能理解其精髓
https://jb123.cn/jiaobenyuyan/65656.html

实时翻译软件下载及脚本语言应用详解
https://jb123.cn/jiaobenyuyan/65655.html
热门文章

JavaScript (JS) 中的 JSF (JavaServer Faces)
https://jb123.cn/javascript/25790.html

JavaScript 枚举:全面指南
https://jb123.cn/javascript/24141.html

JavaScript 逻辑与:学习布尔表达式的基础
https://jb123.cn/javascript/20993.html

JavaScript 中保留小数的技巧
https://jb123.cn/javascript/18603.html

JavaScript 调试神器:步步掌握开发调试技巧
https://jb123.cn/javascript/4718.html