📜  交换键值对象javascript(1)

📅  最后修改于: 2023-12-03 15:06:23.494000             🧑  作者: Mango

交换键值对象 JavaScript

在 JavaScript 中,交换键值对象通常用于将对象的键和值互换。这可以很容易地通过创建一个新对象,并将作为键的值给作为值的键来实现。

以下是如何使用 JavaScript 交换键值对象的三种不同方法。

方法一

使用 for...in 循环遍历对象,并更新新的交换键值对的对象。

const obj = { a: 1, b: 2, c: 3 };

const swappedObj = {};

for (const key in obj) {
  swappedObj[obj[key]] = key;
}

console.log(swappedObj); // { 1: "a", 2: "b", 3: "c" }
方法二

使用 Object.entries() 方法将对象的键和值转化为二元数组形式。然后,使用 Array.prototype.reduce() 方法循环遍历每一个数组,并将交换后的键值对添加到新的对象中。

const obj = { a: 1, b: 2, c: 3 };

const swappedObj = Object.entries(obj).reduce((acc, [key, val]) => {
  acc[val] = key;
  return acc;
}, {});

console.log(swappedObj); // { 1: "a", 2: "b", 3: "c" }
方法三

使用 ES6 中的新功能 Object.fromEntries() 方法和 Object.entries() 方法结合使用。将 Object.entries() 方法用于转换键值对,然后使用 Object.fromEntries() 方法将键值对数组转换回对象。

const obj = { a: 1, b: 2, c: 3 };

const swappedObj = Object.fromEntries(Object.entries(obj).map(([key, val]) => [val, key]));

console.log(swappedObj); // { 1: "a", 2: "b", 3: "c" }

以上是三种不同的 JavaScript 方法用于交换键值对的对象。这将为您提供多种选择,以帮助您执行此操作。