{"groupFlight":[[{"name":"lanqi"},{"name":"lan"}],[{"name":"anan"},{"name":"qiqi"},{"name":"haha"}],[{"name":"lanladf"},{"name":"hehe"},{"name":"saldf"},{"name":"wekjr"}]]}

解决方案 »

  1.   

    可以考虑把JSON转换成数组,然后用数组的sort(arrayObj.sort();)方法排序,然后再重新组织成json串,再转成JSON对象
      

  2.   

    1。先排好再做成json字符串
    2。将json转化为js对象再处理
      

  3.   

    排序?你那么多个数组,是全部组合起来排序还是小数组内部的项目进行排序?下面是小数组内部排序的    var d = { "groupFlight": [[{ "name": "lanqi" }, { "name": "lan"}], [{ "name": "anan" }, { "name": "qiqi" }, { "name": "haha"}], [{ "name": "lanladf" }, { "name": "hehe" }, { "name": "saldf" }, { "name": "wekjr"}]] }
        function ShowJson(arr) {
            var r = '';
            for (var i = 0, j = arr.length; i < j; i++) r += arr[i].name + '\n';
            alert(r);
        }
        for (var i = 0, j = d.groupFlight.length; i < j; i++) {
            ShowJson(d.groupFlight[i]);
            d.groupFlight[i].sort(function (a, b) { return a.name > b.name ? 1 : -1; });
            ShowJson(d.groupFlight[i]);
        }
      

  4.   

    function createComparisonFunction(propertyName) {

    return function(object1, object2) {
    var value1 = object1[propertyName];
    var value2 = object2[propertyName]; if(value1 < value2) {
    return -1;
    } else if (value1 > value2) {
    return 1;
    } else {
    return 0;
    }
    };
    }
    var a = {"groupFlight":[[{"name":"lanqi"},{"name":"lan"}],[{"name":"anan"},{"name":"qiqi"},{"name":"haha"}],[{"name":"lanladf"},{"name":"hehe"},{"name":"saldf"},{"name":"wekjr"}]]};
    a = evel(a);
    a.groupFlight[0].sort(createComparisonFunction("name"));