概述
let arr = [
{ name: '小明', age: 20 },
{ name: '朝红', age: 33 },
{ name: '刚子', age: 51 },
{ name: '华仔', age: 61 }
];
arr[5] = {};
arr[5].name = [
{ name: '小明', age: 20 },
{ name: '朝红', age: 33 },
{ name: '刚子', age: 51 },
{ name: '华仔', age: 61 }
];
function sortByKey(arr, key, order = 'desc', vt = 'string') {
if (!Array.isArray(arr)) return arr;
let canSort = true;
arr.forEach((item) => {
if (Array.isArray(item[key])) {
item[key] = sortByKey(item[key], key, order);
return;
}
if (typeof item[key] !== 'string' && typeof item[key] !== 'number') {
canSort = false;
}
});
return canSort
? arr.sort((m, n) =>
order === 'desc'
? typeof m[key] === vt
? n[key].localeCompare(m[key])
: n[key] - m[key]
: typeof m[key] === vt
? m[key].localeCompare(n[key])
: m[key] - n[key]
)
: arr;
}
arr = sortByKey(arr, 'name');
console.log(arr);
最后
以上就是清新机器猫为你收集整理的对象数组字符串排序的全部内容,希望文章能够帮你解决对象数组字符串排序所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复