【问题标题】:Sorting an Alphanumeric value in array of objects using javascript?使用javascript对对象数组中的字母数字值进行排序?
【发布时间】:2023-03-26 18:09:02
【问题描述】:

我正在从数据库中获取一个字符串,一个对象字段数组,其中包含如下值: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'}];

我想根据 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];
            });

但它给了我不正确的结果。

我想要的是它应该首先显示空 ID,然后按数字排序。

我该怎么做?

【问题讨论】:

    标签: javascript arrays sorting cordova-2.7.0


    【解决方案1】:

    只是一个小错误,您在条件句中使用 '==' 而不是 '=' 来赋值。

    【讨论】:

      猜你喜欢
      • 2012-02-21
      • 2014-09-25
      • 1970-01-01
      • 2020-08-24
      • 2012-01-27
      • 1970-01-01
      • 2015-10-14
      • 2019-06-15
      • 1970-01-01
      相关资源
      最近更新 更多