javascript中剩余参数语法(...)用于数组解构时只能置于末位,可收集尾部多余元素为新数组;元素不足时前面变量为undefined,rest为空数组;支持与默认值结合提升健壮性。

JavaScript 中可以用剩余参数语法(...)配合数组解构,把数组中“超出指定数量”的元素收集到一个新数组里。
基本用法:收集尾部多余项
在数组解构时,把 ... 放在最后一个变量前,就能把剩余所有元素打包成一个数组:
const [a, b, ...rest] = [1, 2, 3, 4, 5]; console.log(a); // 1 console.log(b); // 2 console.log(rest); // [3, 4, 5]
注意位置限制:只能放在最后
剩余元素必须是解构模式中的最后一个项,否则会报错:
在 Java 中初始化和管理阿里云 SDK客户端。包括单例模式、线程安全、endpoint 与 region 配置、VPC 终端节点、同步与异步等。
-
[...rest, a]❌ 语法错误 -
[a, ...rest, b]❌ 语法错误 -
[a, ...rest]✅ 合法 -
[...rest]✅ 合法(等价于浅拷贝原数组)
处理少于预期长度的数组
如果原数组元素不够,前面的解构变量会是 undefined,而 rest 始终是空数组(不会报错):
const [x, y, ...others] = [10]; console.log(x); // 10 console.log(y); // undefined console.log(others); // []
结合默认值更安全
可以为前面的解构变量设置默认值,同时保留 rest 的灵活性:
const [first = 'no item', second = 'no second', ...others] = ['a']; console.log(first); // 'a' console.log(second); // 'no second' console.log(others); // []
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南










