- 对象形式的参数
const fnObj = function({name = '小红'} = {}){
console.log(name)
};
const obj = {
name: '小明',
sex: '男'
}
fnObj(obj); // 小明
fnObj({sex: '男'}); // 小红
fnObj(); // 小红
2.数组形式的参数
const fnArr = function([x = 1, y = 2] = []){
console.log(x + y);
}
const arr = [5,6,7];
fnArr(arr); // 11
fnArr([4]); // 6
fnArr(); // 3
3.总结:
- 给每个参数赋初始值,以防函数传参没有对应参数时不会输出undefined
- 给整一个对象/数组附空值,让函数可以不传参
- 也可以不给参数赋初始值,不影响正确传参使用,以对象为例,数组同理:
const fn = function({name}){ console.log(name); } fn({name: '不传值'}); // 不传值 fn({sex: 1}); // undefined fn(); // 报错
网友评论