为了账号安全,请及时绑定邮箱和手机立即绑定

如何在Javascript中使用命名参数的默认值

如何在Javascript中使用命名参数的默认值

神不在的星期二 2022-07-08 17:14:27
我有一个 javascript 函数,它将对象作为参数,如下所示:const someFunc = ({ a }) => { <do something> }我这样调用函数:a = 'some value' someFunc({ a })但有时,我需要调用函数而不传递a. 在这种情况下,我需要为a. 如何为对象内的键添加默认值?
查看完整描述

4 回答

?
白衣非少年

TA贡献1155条经验 获得超0个赞

我认为您正在寻找默认参数


const someFunc = ({ a = "foo" }) => {

   console.log(a);

}

someFunc({}); // "foo"

someFunc({a: "bar"}); // "bar"


更新 如果您还希望在不传递任何参数的情况下将其设为默认值,a则还需要为包含. 就像是:"foo"a


const someFunc = ({ a = "foo" } = {}) => {

   console.log(a);

}

someFunc(); // "foo"


查看完整回答
反对 回复 2022-07-08
?
弑天下

TA贡献1818条经验 获得超8个赞

ES6 接受参数的默认值:


const someFunc = ({a} = {a : 6}) => { 

  console.log({a})

}

someFunc({ a : 3 })

someFunc()


查看完整回答
反对 回复 2022-07-08
?
哈士奇WWW

TA贡献1799条经验 获得超6个赞

const someFunc = ({a, b, c ,d} = {a:10, b: 12, c:3, d:4}) => {

   console.log(a, b, c ,d);

}

someFunc()


请记住,此代码实际上不会在 IE 中工作。


这是 IE 的解决方法:


    var someFunc = function someFunc() {

    var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {

       a: 10

    },

    a = _ref.a;


    //here starts the function

    console.log(a);

};

someFunc();


查看完整回答
反对 回复 2022-07-08
?
慕田峪4524236

TA贡献1875条经验 获得超5个赞

const someFunc = ({ a }) => { 

 typeof a === 'undefined' 

 ? a = 'some default'

 : a = a;

 console.log(a);

}


a = 'some value';

someFunc({ a });

someFunc({});


查看完整回答
反对 回复 2022-07-08
  • 4 回答
  • 0 关注
  • 101 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信