在JavaScript对象中按名称进行分组和提取属性可以使用以下方法:
方法一:使用reduce()函数
const data = [
{ name: 'John', age: 35, city: 'New York' },
{ name: 'Jane', age: 28, city: 'Los Angeles' },
{ name: 'John', age: 42, city: 'Seattle' },
{ name: 'Jane', age: 31, city: 'Chicago' }
];
const groupedData = data.reduce((acc, obj) => {
const key = obj.name;
if (!acc[key]) {
acc[key] = [];
}
acc[key].push(obj);
return acc;
}, {});
console.log(groupedData);
方法二:使用forEach()函数
const data = [
{ name: 'John', age: 35, city: 'New York' },
{ name: 'Jane', age: 28, city: 'Los Angeles' },
{ name: 'John', age: 42, city: 'Seattle' },
{ name: 'Jane', age: 31, city: 'Chicago' }
];
const groupedData = {};
data.forEach(obj => {
const key = obj.name;
if (!groupedData[key]) {
groupedData[key] = [];
}
groupedData[key].push(obj);
});
console.log(groupedData);
这两种方法都会将具有相同名称的对象分组在一起,并将它们存储在一个新的对象中,对象的属性名是名称,属性值是具有该名称的对象数组。
上一篇:按名称在不同命名空间中获取路由
下一篇:按名称在列表中访问glm模型