
要想在 javascript 对象数组中替换键和值,同时保持顺序,一个可选的方法是利用对象键不是数字的特性来实现。
具体步骤如下:
- 使用 object.entries() 方法将对象转换为键值对数组。
- 遍历键值对数组,查找需要替换的键。
- 找到需要替换的键后,使用 entries[i][0] 表示新键,使用 entries[i][1] 表示新值。
- 将修改后的键值对重新转换为对象,并使用 object.fromentries() 方法。
以下是一个实现该方法的示例代码:
function replaceobjkeywithorder( obj: t, kold: keyof t & string, knew: string, ) { const entries = object.entries(obj), entry = entries.find(([k]) => k === kold); entry && (entry[0] = knew); return object.fromentries(entries); }
然后,使用此方法对需要替换键值的数组进行遍历:
立即学习“Java免费学习笔记(深入)”;
const tabledata = [
{
a: "12a",
b: "12b",
},
{
a: "13a",
b: "13b",
},
];
const newtabledata = tabledata.map((v) => replaceobjkeywithorder(v, "a", "d"));
console.log("before:", tabledata);
console.log("after:", newtabledata);输出结果:
before: [
{ A: "12A", B: "12B" },
{ A: "13A", B: "13B" },
];
after: [
{ D: "12A", B: "12B" },
{ D: "13A", B: "13B" },
];通过这种方法,我们可以实现 javascript 对象数组中键和值替换,同时保持顺序。









