d3:排序和升序之间的差异

rk.*_*rk. 11 d3.js

我想知道d3中sort函数和升序函数之间的区别.我正在寻找一种方法来重新排列我的表中的数据按所选列的升序排列.

谢谢.

Bil*_*ill 16

Array.sort()将按升序的字母顺序对值进行排序. Array.sort(d3.ascending)将按升序自然地对值进行排序.排序数字列表时可以看到差异.

var a = [3,26,1,7];

console.log(a.sort());
// prints [1,26,3,7]

console.log(a.sort(d3.ascending));
// prints [1,3,7,26]
Run Code Online (Sandbox Code Playgroud)

有关sort工作原理的其他信息,请参阅https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Array/sort.

  • 它没有.他将自定义比较器传递给`sort`:`tr.sort(function(a,b){return(b [k]/b.Total) - (a [k]/a.Total);})`.匿名函数(a,b)是实际进行比较的自定义比较器.d3.ascending只是`function(a,b)的缩写{return a <b?-1:a> b?1:0; }` (3认同)