如何解决为什么我的JavaScript对象函数将其参数名称分配为键而不是参数名称?
我对Javascript对象还很陌生。我定义了一个非破坏性的函数来更新这样的对象:
function updateObjectWithKeyAndValue(object,key,value) {
return Object.assign({},object,{ key: value });
}
let object = {a: 1};
console.log(updateObjectWithKeyAndValue(object,'b',2));
console.log(object);
我得到的函数返回值为{ a: 1,key: 2 }
而不是{ a: 1,b: 2 }
。有什么我做不对的事情吗?谢谢...
解决方法
{ key: value }
是一个具有名为“ key”的属性的对象。要根据变量key
中的值命名属性,请使用计算出的属性名称:
{ [key]: value }
如果您的JavaScript环境支持对象传播,则整个过程可以写为:
return { ...object,[key]: value };
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。