将对象属性数字值转换为字符串,并作为新键值附加到对象

时间:2018-08-13 11:37:45

标签: javascript lodash

0: {Number: 1 }
1: {Number: 2 }

我正在使用lodash并做出反应。我无法将数字转换为字符串,但无法将值添加回输出中。我需要看起来像这样的东西:

0: {Number: 1, newNumber:"1" }
1: {Number: 2, newNumber: "2" }

我尝试使用.push,但这只是将其添加为新对象,例如。

0: {Number: 1, }
1: {Number: 2, } 
3: {newNumber: "1"}

我无法推入其对应的对象...

2 个答案:

答案 0 :(得分:2)

可以使用Array.map

var x = [{
  Number: 1
}, {
  Number: 2
}];

var y = x.map(el => {
  el.newNumber = el.Number.toString();
  return el;
});

console.log(y);

答案 1 :(得分:1)

您可以使用Array.prototype.map遍历数据并将附加键添加到对象:

var data = [{Number: 1 }, {Number: 2 }];

var result = data.map(el => ({...el, newNumber: String(el.Number)}))

console.log(result);