📅  最后修改于: 2023-12-03 15:23:52.634000             🧑  作者: Mango
在 JavaScript 中,有时候需要交换 JSON 元素的键和值,可以通过以下方法实现。
const original = {a: 1, b: 2, c: 3};
const swapped = Object.entries(original).reduce((obj, [key, value]) => Object.assign(obj, {[value]: key}), {});
console.log(swapped);
// 输出:{1: "a", 2: "b", 3: "c"}
以上代码中,Object.entries()
方法将 JSON 对象转换成一个键值对数组。然后我们使用 Array.reduce()
方法遍历该数组,并通过 Object.assign()
方法将交换后的键值对添加到一个新的 JSON 对象中。
const original = {a: 1, b: 2, c: 3};
const swapped = Object.fromEntries(Object.entries(original).map(([key, value]) => [value, key]));
console.log(swapped);
// 输出:{1: "a", 2: "b", 3: "c"}
以上代码中,Object.entries()
和 Array.map()
方法的使用与第一种方法相同。不同之处在于,我们使用 Object.fromEntries()
方法将交换后的键值对数组转换为一个新的 JSON 对象。
以上两种方法可以实现交换 JSON 元素的键和值。其中第一种方法使用了 Array.reduce()
方法,而第二种方法使用了 Array.map()
方法和 Object.fromEntries()
方法。可以根据具体的需求选择合适的方法。