函数默认值
把默认值的设定放在了参数上,而不需要在函数体内进行检测,一般将带默认值的参数放在最后。只有当传入的参数为undefined,才会触发默认值赋值。否则,哪怕你传的参数值为0,false,null都不会触发默认值赋值
function person2(name = 'maqiao', age = 22) {console.log(name, age); } person2(); //maqiao 22 person2('zs'); //zs 22
rest参数,这是一个新的概念,rest的中文意思是:剩下的部分。在实参中,除了第一个参数以外,剩余的参数都会被...values获取到。rest参数必须是函数的最后一个参数
function sum(result, ...values) { console.log(values); // [1, 2, 3, 4, 5, 6] values.forEach(function (v, i) { result += v; }) console.log(result); //21 } var res = 0; sum(res, 1, 2, 3, 4, 5, 6);
扩展运算符 ... 可以将一个数组转成一个对应的参数数列
function sum(a, b) { return a + b; } let arr = [2, 3]; console.log(sum(...arr));