2

有人可以给我看一个例子,其中的方法axis.tickSubdivide有所作为吗?


我一直找不到这样的例子。IOW,无论我想出什么例子,无论我是否包含对 的调用,tickSubdivide我都会得到相同的结果,当我确实包含对 的调用时tickSubdivide,无论我传递给它的值如何,我都会得到相同的结果(如只要我传递一些价值)。


当我查看源代码时,它似乎是一个空操作:

axis.tickSubdivide = function() {
  return arguments.length && axis;
};

...但我不能声称理解d3源代码。

ubdivide(FWIW,上面显示了文件中唯一提到的子字符串字符串d3.v3.js,今天从 d3js.org 下载)。

4

1 回答 1

4

它什么也没做!

"tickSubdivide": {
  "is deprecated and does nothing": function(d3) {

至于:

return arguments.length && axis;

来自MDN, && 的定义

expr1 && expr2
Returns expr1 if it can be converted to false; otherwise, returns expr2. 

axis.tickSubdivide()将返回 0,因为 arguments.length 等于 0,这在 javascript 中是错误的。如果传递了更多参数 axis.tickSubdivide('atLeastOneArg')- 它将返回axis。有关此约定的更多信息,请参阅Towards Reusable Charts

于 2013-09-10T21:07:24.283 回答