ES2015 参数默认值 Default Parameters
程序员文章站
2022-03-08 20:48:34
...
ES2015以前,如果我们想要设置参数默认值,需要在函数体中通过逻辑代码来实现。
// ES2015以前我们需要在函数体中通过逻辑代码来实现
function foo(param){
param = param === undefined ? true : param;
console.log(param)
}
foo() // true
ES2015以后,实现方法就简单方便多了:
function foo(param = true){
console.log(param)
}
foo() // true
如果函数有多个参数,带有默认值的形参一定要出现在参数列表的最后,因为参数是按照次序传递的。
function sum (a = 10, b = 5) {
return a + b;
}
console.log(sum(1, 2)); // 3
console.log(sum(5)); // 10
console.log(sum()); // 15
// 当需要第一个参数使用默认值,而指定第二个参数时,需要显式指定第一个参数值为undefined
// 需要注意,当显式指定参数为null时,是不会使用默认值的
console.log(undefined, 10); // 20