前端 sort 函数兼容

最近在开发h5页面时候,遇到一个问题,就是使用sort函数排序之后,安卓排序显示正常,但是iOS显示还是乱序, 

    var riskIndexes = [{
                        name: 'Accident',
                        risk: 11
                    },
                    {
                        name: 'Health',
                        risk: 16
                    }, {
                        name: 'Property',
                        risk: 10
                    }, {
                        name: 'Family',
                        risk: 5
                    }, {
                        name: 'Duty',
                        risk: 8
                    }]
                    riskIndexes = riskIndexes.sort(function(a, b) {
                        return a.risk >b.risk;
                    });

  有bug代码如上,最后发现sort后面跟着的排序函数,需要返回正数、负数、0才是标准的影响它排序的因素于是乎填坑,成功解决

   riskIndexes = riskIndexes.sort(function(a, b) {
                        return a.risk - b.risk;
                    });

  此种是升序,如要降序,即 b.risk - a.risk

原文地址:https://www.cnblogs.com/alhh/p/7644854.html