参数默认值
- 首先,来看一下es5中的函数默认值
var a = a || 10;
var b = b || "none"
// 当a的值或者b的值为undefined时,根据逻辑或运算的特性,将会返回后一个值,因而实现默认值
function sum (a, b) {
a = a || 10;
b = b || 5;
return a + b;
}
sum(); // 15
- es6中提供了一个新的函数默认值的方式,外界传入的参数会依次赋值给函数中的参数
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
ps:
https://www.cnblogs.com/zhangzhengsmiling/p/10540221.html
网友评论