繁体   English   中英

更改对象键值

[英]Change object key value

我在具有对象数组的对象上有以下映射

Object.values(props.roleRateOptions).map(el => {
  el.push(shift.roleRate);
  return el;
})

它会返回像这样的对象数组

[ {id:1},{id:2},{label:3} ]

问题是当我push(shift.roleRate)它有一个名为label而不是id的值时,我怎么能将它改为id 或者任何解决方法,如果我不能改变这个,我可以指定一个新的id值吗? 提前致谢!

您可以重新映射数组中的对象:

 var data = [{id:1},{id:2},{label:3}]; var res = data.map(x => ({ id: x.id || x.label})); console.log(res); 

您可以在IIFE中重命名该值:

 el.push((({ label, ...rest }) => ({ id: label, ...rest }))(shift.roleRate));

或者只是复制该属性:

 shift.roleRate.id = shift.roleRate.label;
 el.push(shift.roleRate);

暂无
暂无

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

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