如何在jQuery中对JSON对象进行排序

Dee*_*een 1 javascript sorting jquery

我有一个JSON对象,例如:

{
    "resp" : [
        {
            "name" : "s"
        }, 
        {
            "name" : "c"
        }, 
        {
            "name" : "f"
        }
    ]
}
Run Code Online (Sandbox Code Playgroud)

在这里,我想name按字母顺序按值对对象进行排序。
因此,它应成为此对象:

{
    "resp" : [
        {
            "name" : "c"
        }, 
        {
            "name" : "f"
        },
        {
            "name" : "s"
        }
    ]
}
Run Code Online (Sandbox Code Playgroud)

我该如何实施?

Dib*_*ran 5

您应该在JSON序列化之前对JavaScript对象中的数组进行排序。序列化的JavaScript对象不过是一个字符串,因此不应进行排序。看看这个:

var obj = {
    rest: [
        { name: "s" },
        { name: "c" },
        { name: "f" }
    ]
};

function compare(a, b) {
    if (a.name< b.name)
        return -1;
    if (a.name > b.name)
        return 1;
    return 0;
}

obj.rest.sort(compare);

JSON.stringify(obj)
Run Code Online (Sandbox Code Playgroud)