【发布时间】:2021-11-23 08:47:54
【问题描述】:
我正在尝试对包含各种对象数组的数据进行排序,myData 的 console.log 类似于:
[
{
name: 'Cdb',
image: 'xxx',
coll: 'xxx'
},
{
name: 'Bcd',
image: 'xxx',
coll: 'xxx',
url: 'myurl'
}
]
[
{
name: 'Abc',
image: 'xxx',
coll: 'xxx'
}
]
我正在尝试按字母顺序对其进行排序(基于 name 的值),如果 object 具有参数 url ,请将其放在开头。
所以输出将是:
name: 'Cdb',
image: 'xxx',
coll: 'xxx',
url: 'myurl'
name: 'Abc',
image: 'xxx',
coll: 'xxx'
name: 'Bcd',
image: 'xxx',
coll: 'xxx'
我尝试的是这个,以及它的许多变体,但它不起作用:
var myData = props?.data
console.log(props?.data)
if(props.data){
// those with url first, then alphabetically
myData = props.data.sort(function(a, b){
return b.url? 1 || (a.name < b.name) : -1;
})
}
【问题讨论】:
标签: javascript arrays sorting object