繁体   English   中英

如何设置对象键的默认值?

[英]How can I set default values for an object's keys?

函数接收对象o 该功能要求它有四个键, abcd 对于每个undefined ,我们要设置自定义默认值。 一种选择是:

function func(o) {
    o.a = o.a || 12;
    o.b = o.b || function() {}
    // and so on
}

但是有更优雅或惯用的选择吗?

请注意,您的方法将覆盖与undefined不同的虚假值,如0""NaNfalse

假设您只想要o的可枚举属性,可以使用Object.assign

function func(o) {
  o = Object.assign({
    a: 12,
    b: function() {}
  }, o);
}

基本上,它使用默认值创建一个新对象,并使用参数中的数据覆盖它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM