Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/398.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 按属性对嵌套数组排序_Javascript_Sorting_Express - Fatal编程技术网

Javascript 按属性对嵌套数组排序

Javascript 按属性对嵌套数组排序,javascript,sorting,express,Javascript,Sorting,Express,我有这个数组,我想知道是否可以分别用属性comments.count和likes.count对它进行排序 例如,我可以使用likes.count参数或comments.count参数调用一个函数 { "attribution": null, "tags": [ ], "type": "", "location": null, "comments": { "count": 2, "data": [

我有这个数组,我想知道是否可以分别用属性
comments.count
likes.count
对它进行排序

例如,我可以使用
likes.count
参数或
comments.count
参数调用一个函数

{
    "attribution": null,
    "tags": [

    ],
    "type": "",
    "location": null,
    "comments": {
        "count": 2,
        "data": [
            {
                "created_time": "1385670850",
                "text": "Holy shit",
                "from": {
                    "username": "someone",
                    "profile_picture": "http://url.com/profiles/profile_191120775_75sq_1365830292.jpg",
                    "id": "191120775"
                },
                "id": "599372997379438683"
            },
            {
                "created_time": "1385680581",
                "text": "",
                "from": {
                    "username": "someone",
                    "profile_picture": "http://url.com/profiles/profile_1523167_75sq_1389544912.jpg",
                    "id": "1523167"
                },
                "id": "599454624038205610"
            }
        ]
    },
    "likes": {
        "count": 6,
        "data": [
            {
                "username": "someone",
                "profile_picture": "http://url.com/profiles/profile_2169761_75sq_1389075971.jpg",
                "id": "2169761"
            },
            {
                "username": "rashmityagi",
                "profile_picture": "http://url.com/profiles/profile_393770264_75sq_1388911033.jpg",
                "id": "393770264"
            },
            {
                "username": "tylerferweda",
                "profile_picture": "http://url.com/profiles/profile_191120775_75sq_1365830292.jpg",
                "id": "191120775"
            },
            {
                "username": "cbolts",
                "profile_picture": "http://url.com/profiles/profile_1523167_75sq_1389544912.jpg",
                "id": "1523167"
            }
        ]
    }
},
{
    "attribution": null,
    "tags": [

    ],
    "type": "",
    "location": null,
    "comments": {
        "count": 10,
        "data": [
            {
                "created_time": "1385670850",
                "text": "Holy shit",
                "from": {
                    "username": "someone",
                    "profile_picture": "http://url.com/profiles/profile_191120775_75sq_1365830292.jpg",
                    "id": "191120775"
                },
                "id": "599372997379438683"
            },
            {
                "created_time": "1385680581",
                "text": "",
                "from": {
                    "username": "someone",
                    "profile_picture": "http://url.com/profiles/profile_1523167_75sq_1389544912.jpg",
                    "id": "1523167"
                },
                "id": "599454624038205610"
            }
        ]
    },
    "likes": {
        "count": 20,
        "data": [
            {
                "username": "someone",
                "profile_picture": "http://url.com/profiles/profile_2169761_75sq_1389075971.jpg",
                "id": "2169761"
            },
            {
                "username": "rashmityagi",
                "profile_picture": "http://url.com/profiles/profile_393770264_75sq_1388911033.jpg",
                "id": "393770264"
            },
            {
                "username": "tylerferweda",
                "profile_picture": "http://url.com/profiles/profile_191120775_75sq_1365830292.jpg",
                "id": "191120775"
            },
            {
                "username": "cbolts",
                "profile_picture": "http://url.com/profiles/profile_1523167_75sq_1389544912.jpg",
                "id": "1523167"
            }
        ]
    }
},

json_array.sort(函数(a,b){
如果(a.comments.countb.comments.count){
返回1;
}
返回0;
});

您还可以为
类修改它。count

下划线。js为处理数组和对象提供了强大的实用功能。对于您的案例,您可以使用u.sortBy(…)查看更多详细信息。对于简单的对象属性,只需指定对象属性名称als last参数即可。

还要注意,您的问题与JSON无关。解析JSON后,您将处理常规JS对象和数组,
{
    "attribution": null,
    "tags": [

    ],
    "type": "",
    "location": null,
    "comments": {
        "count": 2,
        "data": [
            {
                "created_time": "1385670850",
                "text": "Holy shit",
                "from": {
                    "username": "someone",
                    "profile_picture": "http://url.com/profiles/profile_191120775_75sq_1365830292.jpg",
                    "id": "191120775"
                },
                "id": "599372997379438683"
            },
            {
                "created_time": "1385680581",
                "text": "",
                "from": {
                    "username": "someone",
                    "profile_picture": "http://url.com/profiles/profile_1523167_75sq_1389544912.jpg",
                    "id": "1523167"
                },
                "id": "599454624038205610"
            }
        ]
    },
    "likes": {
        "count": 6,
        "data": [
            {
                "username": "someone",
                "profile_picture": "http://url.com/profiles/profile_2169761_75sq_1389075971.jpg",
                "id": "2169761"
            },
            {
                "username": "rashmityagi",
                "profile_picture": "http://url.com/profiles/profile_393770264_75sq_1388911033.jpg",
                "id": "393770264"
            },
            {
                "username": "tylerferweda",
                "profile_picture": "http://url.com/profiles/profile_191120775_75sq_1365830292.jpg",
                "id": "191120775"
            },
            {
                "username": "cbolts",
                "profile_picture": "http://url.com/profiles/profile_1523167_75sq_1389544912.jpg",
                "id": "1523167"
            }
        ]
    }
},
{
    "attribution": null,
    "tags": [

    ],
    "type": "",
    "location": null,
    "comments": {
        "count": 10,
        "data": [
            {
                "created_time": "1385670850",
                "text": "Holy shit",
                "from": {
                    "username": "someone",
                    "profile_picture": "http://url.com/profiles/profile_191120775_75sq_1365830292.jpg",
                    "id": "191120775"
                },
                "id": "599372997379438683"
            },
            {
                "created_time": "1385680581",
                "text": "",
                "from": {
                    "username": "someone",
                    "profile_picture": "http://url.com/profiles/profile_1523167_75sq_1389544912.jpg",
                    "id": "1523167"
                },
                "id": "599454624038205610"
            }
        ]
    },
    "likes": {
        "count": 20,
        "data": [
            {
                "username": "someone",
                "profile_picture": "http://url.com/profiles/profile_2169761_75sq_1389075971.jpg",
                "id": "2169761"
            },
            {
                "username": "rashmityagi",
                "profile_picture": "http://url.com/profiles/profile_393770264_75sq_1388911033.jpg",
                "id": "393770264"
            },
            {
                "username": "tylerferweda",
                "profile_picture": "http://url.com/profiles/profile_191120775_75sq_1365830292.jpg",
                "id": "191120775"
            },
            {
                "username": "cbolts",
                "profile_picture": "http://url.com/profiles/profile_1523167_75sq_1389544912.jpg",
                "id": "1523167"
            }
        ]
    }
},