如何从typescript中删除数组中的对象?
"revenues":[
{
"drug_id":"20",
"quantity":10
},
{
"drug_id":"30",
"quantity":1
}]
所以我想从所有对象中删除drug_id。 我怎么做到这一点? 谢谢!
答案 0 :(得分:5)
你可以使用它:
this.revenues = this.revenues.map(r => ({quantity: r.quantity}));
有关更通用的方法:
removePropertiesFromRevenues(...props: string[]) {
this.revenues = this.revenues.map(r => {
const obj = {};
for (let prop in r) { if (!props.includes(prop) { obj[prop] = r[prop]; } }
return obj;
});
}
答案 1 :(得分:3)
您可以像这样使用Array.prototype.map
:
revenues = this.revenues.map(r => ({quantity: r.quantity}));
Array.prototype.map
将获取revenues
数组的每个项目,您可以在返回之前对其进行转换。
map()方法创建一个新数组,其中包含调用a的结果 为调用数组中的每个元素提供了函数。
因此,如果您想要例如每个数量加倍并添加或重命名某些字段,您可以执行以下操作:
revenues = this.revenues.map(r => ({quantity: r.quantity, quantity2: r.quantity * 2}));
答案 2 :(得分:1)
这应该有效
revenues.forEach((object) => delete object.drug_id );