美文网首页
函数参数的解构赋值

函数参数的解构赋值

作者: 前端阿良古 | 来源:发表于2018-11-02 11:12 被阅读0次
  1. 对象形式的参数
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(); // 报错
    

相关文章

网友评论

      本文标题:函数参数的解构赋值

      本文链接:https://www.haomeiwen.com/subject/zpyqxqtx.html