js 函数 function sum(...args),function sum(args) 什么区别呢
在 JavaScript 中,function sum(...args)
和 function sum(args)
这两种写法有重要的区别:
1. function sum(...args)
这种写法使用了 剩余参数(rest parameter)语法。...args
会将传入函数的所有参数收集到一个数组中,args
是这个数组。
...args
允许函数接收任意数量的参数,并将它们作为一个数组处理。- 无论传入多少个参数,
args
都会包含这些参数。
例子:
function sum(...args) {
return args.reduce((total, num) => total + num, 0);
}
console.log(sum(1, 2, 3, 4)); // 输出 10
console.log(sum(10, 20)); // 输出 30
console.log(sum(5)); // 输出 5
- 这里
args
是一个数组,可以使用数组方法(如reduce
,map
,filter
等)来处理。
2. function sum(args)
这种写法定义了一个参数 args
,它是一个普通的参数,函数会期望传入 一个单独的参数。
- 如果你传入多个参数,
args
只会获取第一个参数。 - 传入的参数没有自动转换成数组,
args
只是一个普通的变量。
例子:
function sum(args) {
return args.reduce((total, num) => total + num, 0);
}
console.log(sum([1, 2, 3, 4])); // 输出 10
console.log(sum([10, 20])); // 输出 30
console.log(sum([5])); // 输出 5
- 这里你需要传入一个 数组 作为参数,因为
args
只是一个单一的变量。
总结:
...args
是 剩余参数,允许函数接受任意数量的参数,并把它们存储到一个数组中。args
是普通的单一参数,通常是你传递给函数的一个整体值,比如一个数组,或者任何其他类型的数据。
何时使用:
- 如果你不确定函数会收到多少个参数,应该使用
...args
。 - 如果你只需要一个参数(如一个数组或对象),则可以使用
args
。
希望这个解释能帮你理解这两种写法的区别!
相信坚持的力量,日复一日的习惯.
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
2022-11-05 mongodb 导出操作
2022-11-05 linux 环境 mongodump: command not found
2022-11-05 linux 安装nginx && 环境nginx 快捷启动配置
2021-11-05 vue router replace
2021-11-05 html transition 标签
2021-11-05 transform-origin
2021-11-05 CSS中的&代表的什么