在 JavaScript 中将对象数组转换为对象对象
javascriptweb developmentfront end technologyobject oriented programming
假设我们有一个像这样的对象数组 −
const arr = [{id:1,name:"aa"},{id:2,name:"bb"},{id:3,name:"cc"}];
我们需要编写一个 JavaScript 函数,该函数接受一个这样的数组并返回该对象的对象,其中每个对象的键应为 id 属性。
因此,输出应如下所示 −
const output = {1:{name:"aa"},2:{name:"bb"},3:{name:"cc"}};
请注意,用于映射子对象的 id 属性已从子对象本身中删除。
示例
其代码为 −
const arr = [{id:1,name:"aa"},{id:2,name:"bb"},{id:3,name:"cc"}]; const arrayToObject = arr => { const res = {}; for(let i = 0; i < arr.length; i++){ const key = arr[i]['id']; res[key] = arr[i]; delete res[key]['id']; }; return res; }; console.log(arrayToObject(arr));
输出
控制台中的输出将是 −
{ '1': { name: 'aa' }, '2': { name: 'bb' }, '3': { name: 'cc' } }