0
我從數據庫中獲取一個字符串的對象數組字段,其中包含一個值,如:dataarray=[{name:'xyz',id:' '},{name:'abc',id:'DOC-TEMP-1'},{name:'efg',id:''},{name:'abc',id:'DOC-TEMP-21'},{name:'abc',id:''},{name:'jklm',id:'DOC-TEMP-2'}];
。使用javascript對對象數組中的字母數字值進行排序?
我想排序基於ID此陣,所以我試圖用某種方法是這樣做的:
dataarray.sort(function(a,b){
var a1 = a['id'].split('-');
var b1 = b['id'].split('-');
console.log('value in a1: '+a1);
console.log('value in b1: '+b1);
if(a1[2] =='' || a1[2]==null)
{
a1[2] == 0;
}if(b1[2]=='' || b1[2]==null)
{
b1[2] == 0;
}
return a1[2]-b1[2];
});
但它給了我uncorrect結果。
我想要的是它應該首先顯示空id,然後id按數字排序。
我該怎麼做?