如何替换数组中所有出现的 object 键? (JavaScript)
How to replace all occurrences of an object key in an array? (JavaScript)
所以我有一个数组,包含 object 个这样的数组:
var items_array = {
value: 5555,
shipping: 444,
transaction_id: 12345678,
items: [
{
id: "1234",
title: "testitem1",
unitPrice: 12,
quantity: 1
},
{
id: "4321",
title: "testitem2",
unitPrice: 21,
quantity: 2
}]};
现在我想在每个 object 中将“id”替换为“item_id”,将“unitPrice”替换为“price”,并将标题替换为“item_name”大批。遗憾的是,我无法将数组转换为字符串,因此 .replace 方法在这里不起作用,据我所知,.map 方法只允许我替换属性,而不是键本身。此外,此数组中可以包含一个或多个项目,因此无论我有 1 项还是 50 项,解决方案都必须有效。此外,我不能使用“=>”,因为这是下面的旧 javascript 环境1.7 不支持像这样的“现代”解决方案。
你们知道怎么做吗?遗憾的是,我对 Javascript 还很陌生,结果证明我的 Google 技能在这件事上是不够的。如果您需要进一步的解释,请尽管提问,我会尽我所能回答。
你可以去Array.map看看。这里我以items
为例。
旧浏览器
var items = [{
id: "1234",
title: "testitem1",
unitPrice: 12,
quantity: 1
}, {
id: "4321",
title: "testitem2",
unitPrice: 21,
quantity: 2
}];
var newItems = items.map(function (item) {
item.item_id = item.id;
delete item.id;
item.price = item.unitPrice;
delete item.unitPrice;
item.item_name = item.title;
delete item.title;
return item;
});
console.log(newItems);
现代方式
let items = [
{
id: "1234",
title: "testitem1",
unitPrice: 12,
quantity: 1
},
{
id: "4321",
title: "testitem2",
unitPrice: 21,
quantity: 2
}
]
const newItems = items.map((item) => {
item.item_id = item.id
delete item.id
item.price = item.unitPrice
delete item.unitPrice
item.item_name = item.title
delete item.title
return item
})
console.log(newItems)
所以我有一个数组,包含 object 个这样的数组:
var items_array = {
value: 5555,
shipping: 444,
transaction_id: 12345678,
items: [
{
id: "1234",
title: "testitem1",
unitPrice: 12,
quantity: 1
},
{
id: "4321",
title: "testitem2",
unitPrice: 21,
quantity: 2
}]};
现在我想在每个 object 中将“id”替换为“item_id”,将“unitPrice”替换为“price”,并将标题替换为“item_name”大批。遗憾的是,我无法将数组转换为字符串,因此 .replace 方法在这里不起作用,据我所知,.map 方法只允许我替换属性,而不是键本身。此外,此数组中可以包含一个或多个项目,因此无论我有 1 项还是 50 项,解决方案都必须有效。此外,我不能使用“=>”,因为这是下面的旧 javascript 环境1.7 不支持像这样的“现代”解决方案。
你们知道怎么做吗?遗憾的是,我对 Javascript 还很陌生,结果证明我的 Google 技能在这件事上是不够的。如果您需要进一步的解释,请尽管提问,我会尽我所能回答。
你可以去Array.map看看。这里我以items
为例。
旧浏览器
var items = [{
id: "1234",
title: "testitem1",
unitPrice: 12,
quantity: 1
}, {
id: "4321",
title: "testitem2",
unitPrice: 21,
quantity: 2
}];
var newItems = items.map(function (item) {
item.item_id = item.id;
delete item.id;
item.price = item.unitPrice;
delete item.unitPrice;
item.item_name = item.title;
delete item.title;
return item;
});
console.log(newItems);
现代方式
let items = [
{
id: "1234",
title: "testitem1",
unitPrice: 12,
quantity: 1
},
{
id: "4321",
title: "testitem2",
unitPrice: 21,
quantity: 2
}
]
const newItems = items.map((item) => {
item.item_id = item.id
delete item.id
item.price = item.unitPrice
delete item.unitPrice
item.item_name = item.title
delete item.title
return item
})
console.log(newItems)