我在使用 sortBy 或 orderBy 按名称对数组进行排序时遇到问题,其中名称可能为空。我希望能够按名称升序 (AZ) 排序,并在末尾添加空值。
目前我的代码:
_sortBy(myArray, objectA => objectA.name)
Run Code Online (Sandbox Code Playgroud)
将在开始时返回空值,然后继续对后面具有名称值的对象进行排序。
预先感谢您的任何帮助。
在 vanilla js 中可以这样做:
data.sort((a,b)=>{
if(a.name===b.name){
return 0
}else if(a.name===null || b.name===null){
return a.name ? -1 : 1;
}
return a.name.localeCompare(b.name);
})
console.log(data)Run Code Online (Sandbox Code Playgroud)
<script>
var data=[
{name:'F'},
{name:null},
{name:null},
{name:'A'}
]
</script>Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10786 次 |
| 最近记录: |