Javascript D3v4:d3.timeParse在UNIX纪元秒(%s)时失败

Javascript D3v4:d3.timeParse在UNIX纪元秒(%s)时失败,javascript,datetime,d3.js,Javascript,Datetime,D3.js,我的数据集包括UNIX时间戳,如“1509392160”。我似乎无法使用返回null的d3.timeParse(“%s”)解析这些 使用d3.timeFormat检查反向过程也使我失败。官方示例和所有其他格式字符串都有效: var formatTime = d3.timeFormat("%B %d, %Y"); formatTime(new Date); // -> "June 30, 2015" 但是,格式化为UNIX(毫秒)秒只会为“%s”和“%Q”返回“s”或“Q”: 使用D3V4

我的数据集包括UNIX时间戳,如“1509392160”。我似乎无法使用返回null的
d3.timeParse(“%s”)
解析这些

使用
d3.timeFormat
检查反向过程也使我失败。官方示例和所有其他格式字符串都有效:

var formatTime = d3.timeFormat("%B %d, %Y");
formatTime(new Date); // -> "June 30, 2015"
但是,格式化为UNIX(毫秒)秒只会为“%s”和“%Q”返回“s”或“Q”:

使用D3V4.11.0 btw。
我错过了什么

我只使用d3时间格式模块运行了这段代码,没有问题:

var parse=d3.timeParse(“%s”);
var-time=parse(1509392160);
console.log(时间);
var格式=d3.timeFormat(“%s”);
时间=格式(Date.now());
console.log(时间)
作为对的补充,这是一个问题:

D3默认(核心)捆绑包在其内部具有以下说明符:

如您所见,如果您将此与比较,它缺少所有这些:

  • “f”
  • “Q”
  • “s”
  • “V”
  • “u”
因此,目前的替代方案是引用时间独立微库:

<script src="https://d3js.org/d3-time-format.v2.min.js"></script>

编辑:事实上,默认捆绑包还没有这些新指令。这是Bostock刚刚解决的GitHub问题:


因此,与此同时,请继续使用独立微库。

同样的问题(默认捆绑与独立微库)也发生在这里:完全错过了这个问题(和答案),可能会让我有点挠头。Andrew,检查我答案中的编辑(感谢您更正“U”).这是一个可能不会被其他人注意到的编辑,我想我会把它放进去以防万一(不值得评论)。很高兴得到确认,我根据时间顺序估计它将是下一个版本,很高兴得到消息来源的确认。说实话,只有在我发布了Github问题后,我才注意到你答案中的发布日期。下一次我会更加小心。正如下面的答案所解释的,默认捆绑包不能与某些说明符一起工作。例如,看看我的回答,关于
“f”
var parses = {
    "a": parseShortWeekday,
    "A": parseWeekday,
    "b": parseShortMonth,
    "B": parseMonth,
    "c": parseLocaleDateTime,
    "d": parseDayOfMonth,
    "e": parseDayOfMonth,
    "H": parseHour24,
    "I": parseHour24,
    "j": parseDayOfYear,
    "L": parseMilliseconds,
    "m": parseMonthNumber,
    "M": parseMinutes,
    "p": parsePeriod,
    "S": parseSeconds,
    "U": parseWeekNumberSunday,
    "w": parseWeekdayNumber,
    "W": parseWeekNumberMonday,
    "x": parseLocaleDate,
    "X": parseLocaleTime,
    "y": parseYear,
    "Y": parseFullYear,
    "Z": parseZone,
    "%": parseLiteralPercent
};
<script src="https://d3js.org/d3-time-format.v2.min.js"></script>