javascript - 不知道如何排序这个 JSON 对象 jQuery/JavaScript

标签 javascript jquery json sorting

示例字符串:

var output = { 
      "myservices":[
         {"name":"oozie", "hostidn": "1", "details":"failed process health monitor....", "currstatus":"Warning", "currstatusclass":"warning"},
         {"name":"oozie", "hostidn": "2", "details":"failed process health monitor....", "currstatus":"Warning", "currstatusclass":"warning"},
         {"name":"oozie", "hostidn": "3", "details":"failed process health monitor....", "currstatus":"Warning", "currstatusclass":"warning"},
         {"name":"oozie", "hostidn": "4", "details":"failed process health monitor....", "currstatus":"Warning", "currstatusclass":"warning"},
         {"name":"oozie", "hostidn": "5", "details":"failed process health monitor....", "currstatus":"Warning", "currstatusclass":"warning"},
         {"name":"single-namenode", "hostidn": "2", "details":"failed process health monitor....", "currstatus":"Warning", "currstatusclass":"warning"}
]};

我的 cookies jack 尝试这样做。

function sortJSONresultsByHost(a,b)
{
    var objectIDA = parseInt(a.hostidn, 10)
    var objectIDB = parseInt(b.hostidn, 10)
    if(objectIDA === objectIDB)
    {
        return 0;
    }
    return objectIDA > objectIDB ? 1 : -1;
}
output.myservices.sort(sortJSONresultsByHost);

我实际上需要弄清楚如何以各种方式对这些进行排序。例如按hostidn、按名称、按currstatusclass。但我无法找出最好的方法。有没有一种方法可以创建一个可以通过选择执行任何操作的函数,或者我是否需要根据我想要执行的操作创建一组函数,如果如何?上面的内容不适合我。

最佳答案

function sortObjectsByKey(objects, key){
    objects.sort(function() {
        return function(a, b){
            var objectIDA = a[key];
            var objectIDB = b[key];
            if (objectIDA === objectIDB) {
                return 0;
            }
            return objectIDA > objectIDB ? 1 : -1;        
        };
    }());
}

sortObjectsByKey(output.myservices, "hostidn");
console.log(output.myservices);

关于javascript - 不知道如何排序这个 JSON 对象 jQuery/JavaScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7711644/

相关文章:

javascript - 如何使用 Firebase 上传多个文件?

多行省略号文本的jquery函数

sql - Powershell:从JSON响应中选择单个值

java - 如何在Java中获取HTTP错误400的响应json

Javascript lodash 展平分层对象

javascript - Mobile Safari 视差滚动不起作用

javascript - html5 视频 "ended"事件在 chrome 和 IE 中不起作用

javascript - 与 mysql 连接的实时图表问题

javascript - 打印文件中的数组数组

javascript - 使用 JavaScript/Jquery 获取 GridView 隐藏字段值