将函数调用为Array结构

时间:2019-06-17 11:25:48

标签: angular typescript

我正在尝试从打字稿中的函数生成数组。 我的数组如下所示:

model = {
  roles: { 4: true }
};
我需要使用自动生成值的功能来更改值4。 我的函数如下所示:

getIndex(data) {
  data.forEach(function (value) {
    return value['id'];
  });
}

我尝试了类似的方法,但是它不起作用,并且出现错误:

model = {
  roles: { getIndex(dataValues): true }
};

我希望函数中的数组看起来像这样

model = {
  roles: { 4: true, 5: true, 7: false }
};

有人可以帮我吗?预先谢谢你们^^

1 个答案:

答案 0 :(得分:0)

首先让模型= {角色:{}}; 是对象而不是数组。您可以参考以下代码来获取所需的信息。

const data = [{ id: 4, value: 'Potato' }, { id: 1, value: 'Tomato' }]

let model = {
    roles: {}
};

function getIndex(entity) {
    console.log(entity.value); /** Potato, Tomato  */
    return entity.id;
};

data.forEach(function (entity) {
    model.roles[getIndex(entity)] = true;
});

console.log(model);