1、arguments
arguments 是函数内部内置的伪数组变量,它包含了调用函数时传入的所有实参
总结:
arguments是一个伪数组,只存在于函数中
1.arguments的作用是动态获取函数的实参
2.可以通过for循环依次得到传递过来的实参
function fn() {
console.log(arguments);
}
fn();
function fn() {
console.log(arguments);
}
fn(1,2,3);
由此观之,arguments是一个伪数组,里面存储的是函数传进去的参数
求任意个数的和:
// arguments动态参数,只存在于函数里面
function getSum() {
let s = 0;
for (let i = 0; i < arguments.length; i++) {
s = arguments[i] + s;
}
return s;
}
console.log(getSum(1, 2, 3));
2、剩余参数
function getSum(...arr) {
console.log(arr);
}
getSum(1, 2);
getSum(1, 2, 3, 4, 5);
function getSum1(a, b, ...arr) {
console.log(arr);
}
getSum1(1, 2);
getSum1(1, 2, 3, 4, 5);
3、展开运算符
展开运算符(…),将一个数组进行展开
典型运用场景: 求数组最大值(最小值)、合并数组等
说明:
1.不会修改原数组
const arr=[1,2,3,4];
console.log(...arr);
// 求最大值
console.log(Math.max(...arr));//4
// 求最小值
console.log(Math.min(...arr));//1
// 合并数组
const arr1=[1,2,3,4];
const arr2=[5,6,7,8];
const arr3=[...arr1,...arr2];
console.log(arr3);