用js帮我写一个方法:把一维数组改成二维数组,要求:数组的每一项是一个对象,根据对象中某一个值(中文),相同的放在一个数组
时间: 2024-05-05 18:18:20 浏览: 60
中。
我可以帮你写一个这样的方法,请看下面的代码:
```javascript
function arrToTwoDim(arr, key) {
let obj = {};
let result = [];
for(let i = 0; i < arr.length; i++) {
let item = arr[i];
if(!obj[item[key]]) {
obj[item[key]] = [];
}
obj[item[key]].push(item);
}
for(let k in obj) {
result.push(obj[k]);
}
return result;
}
let arr = [
{name: '张三', age: 20},
{name: '李四', age: 22},
{name: '王五', age: 23},
{name: '张六', age: 25},
{name: '赵七', age: 26},
{name: '李八', age: 28}
];
let result = arrToTwoDim(arr, 'name');
console.log(result);
```
这个方法接收两个参数,一个是要转换的一维数组,另一个是用来分类的键名,你可以根据需要进行修改。
阅读全文