Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/396.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.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中按4个属性排序_Javascript_Sorting - Fatal编程技术网

如何在JavaScript中按4个属性排序

如何在JavaScript中按4个属性排序,javascript,sorting,Javascript,Sorting,我在自定义的OpenType字体中收到这些警告 WARNING: name: name records are not sorted. WARNING: name: name records are not sorted. 我的名字按如下顺序排列: nameRecords.sort(function(a, b) { return ((a.platformID - b.platformID) || (a.encodingID - b.encodingID) ||

我在自定义的OpenType字体中收到这些警告

WARNING: name: name records are not sorted.
WARNING: name: name records are not sorted.
我的名字按如下顺序排列:

nameRecords.sort(function(a, b) {
    return ((a.platformID - b.platformID) ||
            (a.encodingID - b.encodingID) ||
            (a.languageID - b.languageID) ||
            (a.nameID - b.nameID))
})
出于某种原因,这实际上不会导致对名称记录进行排序,这些记录应该先按platformID排序,然后按encodingID排序,然后按languageID排序,最后按nameID排序


想知道如何为nameRecords数组编写适当的排序函数(JavaScript)。

您需要首先比较第一个字段,如果第一个字段相等,则比较第二个字段,依此类推

详细说明并举例说明