将增量键添加到对象数组

时间:2018-10-11 14:51:25

标签: javascript typescript lodash

我需要你的帮助;

假设我有一个像这样的对象数组

{
    'Name:'ABC',
    'Code': 'BP'
}

在打字稿中向此数组添加增量属性的最佳方法。

[{'Name':'ABC','Code':'BP','ID':0}, [{'Name':'ABD','Code':'DP','ID':1},…]

谢谢

2 个答案:

答案 0 :(得分:1)

请尝试以下操作:

arrayOfObjects.forEach((obj, index) => obj.ID = index)

答案 1 :(得分:0)

我认为您需要考虑是否要变异或不输入。

forEach方法会使输入不正确,但并不总是建议如此。

考虑一下:

var data = [{Name:'ABC',Code: 'BP'}]
const mutate = data.map((x, i) => (x.ID = i, x))
console.log(data)

forEach类似的方法,如您所见,数据获得了mutated

现在考虑像这样的pure approach

var data = [{Name:'ABC', Code: 'BP'}]
const pure = data.map((x, i) => ({...x, ID:i}))
console.log(data, pure)

请注意,数据(函数的输入)没有变化,我们得到的输出将存入。