排序

        /**
         * 排序处理
         * @param    ob1
         * @param    ob2
         * @return
         */
        private var sortType:String;
        
        private function sort_handle(ob1:Object, ob2:Object):Number
        {
            var result1:int;
            var result2:int;
            switch (sortType)
            {
            case "quality": 
                result1 = ob1.isBattle * 1000 + ob1.constData.quality * 10000 + ob1.addData.star * 100 + ob1.addData.level;
                result2 = ob1.isBattle * 1000 + ob2.constData.quality * 10000 + ob2.addData.star * 100 + ob2.addData.level;
                break;
            case "star": 
                result1 = ob1.isBattle * 1000 + ob1.constData.quality * 100 + ob1.addData.star * 10000 + ob1.addData.level;
                result2 = ob2.isBattle * 1000 + ob2.constData.quality * 100 + ob2.addData.star * 10000 + ob2.addData.level;
                break;
            case "level_up": 
                result1 = ob1.isBattle * 1000 + ob1.constData.quality * 100 + ob1.addData.star + ob1.addData.level * 10000;
                result2 = ob2.isBattle * 1000 + ob2.constData.quality * 100 + ob2.addData.star + ob2.addData.level * 10000;
                break;
            case "level_down": 
                result1 = ob1.isBattle * 1000 + ob1.constData.quality * 100 + ob1.addData.star + (100 - ob1.addData.level + 100) * 10000;
                result2 = ob2.isBattle * 1000 + ob2.constData.quality * 100 + ob2.addData.star + (100 - ob2.addData.level + 100) * 10000;
                break;
            default: 
                result1 = ob1.isBattle * 10000 + ob1.constData.quality * 1000 + ob1.addData.star * 100 + ob1.addData.level * 10;
                result2 = ob2.isBattle * 10000 + ob2.constData.quality * 1000 + ob2.addData.star * 100 + ob2.addData.level * 10;
                break;
            }
            if (result1 > result2)
            {
                return -1;
            }
            else if (result1 == result2)
            {
                return 0;
            }
            return 1;
        }

调用

var _result:Array;
_result = after_filter_arr.sort(sort_handle);
原文地址:https://www.cnblogs.com/chen-mo/p/5112629.html