剩余参数和分布参数

函数参数

剩余参数和分布参数
不使用 arguments 对象也可以获取函数传入的可变量的参数。剩余参数的语法就是**…和一个标识符**,使用这种语法定义可以接受传进来的更多参数,把他们收集在一个数组中(不是类数组哦)。

function fn(sum,...sums){ // 这里的剩余参数名不能和参数名 名称一样哦
	console.log("sum",sum,"...",...sums)
}
fn(1,2,3,443,42,423)  // sum 1 ... 2 3 443 42 423

剩余参数都保存在一个数组中,可以使用任何数组的方法操作。即使没有多余的参数传入,剩余参数也是数组。

和剩余数组紧密相关的是分布参数,可以给函数传入一个数组,然后数组中的元素会映射到函数的每个参数上,分布参数的语法和剩余参数一样。都是在值前面加三个点
唯一不同的是剩余参数是在定义函数的参数上使用分布参数是在调用函数传入参数时使用

fn(...[0,9,4,5,6]) // sum 0 ... 9 4 5 6

参数的默认值
在函数中还可以为参数指定默认值,如果函数没有传入对应的参数,可以使用默认值。默认值语法就是在参数名后面加一个等号和默认值

function f(num = 10){
	return num * num
}
f() // 100

你可能感兴趣的:(javascript)