简介
在这个实验中,我们将进行一个 JavaScript 编程练习,重点是使用提供的函数来映射对象的值。这个练习的目的是帮助你更好地理解如何使用 Object.keys() 和 Array.prototype.reduce() 来创建一个具有相同键和映射值的新对象。在这个实验结束时,你将能够运用这些知识来解决你自己项目中更复杂的问题。
用于映射对象值的函数
要使用提供的函数来映射对象的值,以生成一个具有相同键的新对象,请遵循以下步骤:
- 打开终端/SSH 并输入
node以开始练习编码。 - 使用
Object.keys()遍历对象的键。 - 使用
Array.prototype.reduce()使用提供的函数fn创建一个具有相同键和映射值的新对象。 - 以下代码演示了
mapValues函数的实现。
const mapValues = (obj, fn) =>
Object.keys(obj).reduce((acc, k) => {
acc[k] = fn(obj[k], k, obj);
return acc;
}, {});
以下是 mapValues 函数的一个示例用法:
const users = {
fred: { user: "fred", age: 40 },
pebbles: { user: "pebbles", age: 1 }
};
mapValues(users, (u) => u.age); // { fred: 40, pebbles: 1 }
总结
恭喜你!你已经完成了“映射对象值”实验。你可以在 LabEx 中练习更多实验来提升你的技能。