D3.js 按数字排序表,然后按字母顺序(作为决胜局)

use*_*806 1 javascript sorting d3.js

我有一个包含两列数据的表格。当我用列 [1] 排序时,我需要根据列 [0] 的字母值进一步排序。

这将按第二列中的浮点值对表格进行排序,但我想进一步按第一列中的字符串值按字母顺序对领带进行排序。

return tbody.selectAll("tr").sort(function(a, b) 
{
    isSorted = true;
    d3.ascending(parseFloat(a[1]), parseFloat(b[1]));
})
Run Code Online (Sandbox Code Playgroud)

mee*_*mit 5

return tbody.selectAll("tr").sort(function(a, b) {
   d3.ascending(parseFloat(a[1]), parseFloat(b[1])) ||
     d3.ascending(a[0], b[0]);
})
Run Code Online (Sandbox Code Playgroud)

如果 at 的值[1]相等,则d3.ascending返回0,这将导致 javascript 评估||(aka or)之后的第二个表达式并返回其值。

请注意,如果第一个函数调用返回,1或者-1第二个表达式中的函数调用甚至不会执行。