1
我创建的对象的阵列内部的for循环。在每个对象内部,我都有一个关键值对来存储时间。为了达到这个目的,我在d3.js中使用了一个时间尺度。但是我没有得到我期望的结果。该代码是d3.js时间尺度意外行为
var xscale = d3.scaleTime()
.range([new Date(2000, 0, 1), new Date(2000, 0, 2)])
.domain([0, 288]);
var dataprovider = [];
var ti = 0;
for (var k = 0; k < 288; k++) {
var t = xscale(ti++);
dataprovider.push({
x: t,
y: Math.random() * 100
});
}
console.log(dataprovider);
中的jsfiddle link
它的工作。但是当我每次在循环内记录它显示正确的时间。为什么这样? https://jsfiddle.net/suhailsulu/ujfguoky/1/ –
@suhailc你确定吗?我看到**所有**日期相等。 –
循环内的日志显示正确的日期。但在循环之后,它发生了变化。当我倒转了它的工作范围 –