可以使用JavaScript的Array.sort()方法对数组对象进行排序,先按照字母顺序排序,然后再按照数字排序。
// 示例数组对象 let arr = [ {name: "John", age: 25}, {name: "Andrew", age: 20}, {name: "Charlotte", age: 30}, {name: "Zoe", age: 25}, {name: "Dan", age: 35} ];
// 按照姓名首字母升序排序,如果相同则按照年龄升序排序 arr.sort((a, b) => { let nameA = a.name.toUpperCase(); let nameB = b.name.toUpperCase(); if (nameA < nameB) { return -1; // 返回负数,a排在b前面 } if (nameA > nameB) { return 1; // 返回正数,b排在a前面 } // 如果姓名相同,按年龄排序 if (a.age < b.age) { return -1; } if (a.age > b.age) { return 1; } return 0; // 相等,位置不变 });
console.log(arr);
// 输出结果 // [ // {name: "Andrew", age: 20}, // {name: "Charlotte", age: 30}, // {name: "Dan", age: 35}, // {name: "John", age: 25}, // {name: "Zoe", age: 25} // ]