Javascript console.log()输出似乎已缓存
我正在打以下电话:Javascript console.log()输出似乎已缓存,javascript,browser-cache,Javascript,Browser Cache,我正在打以下电话: $.ajax({ url: '/charts/' + empID + '/' + chartID + '.json?' + new Date().getTime(), dataType: 'json', success: function(data){ console.log(data); chart = Chartist.Line('.ct-chart', data, options); } }); 如您所见,当我获取数据时,我会将其传递给
$.ajax({
url: '/charts/' + empID + '/' + chartID + '.json?' + new Date().getTime(),
dataType: 'json',
success: function(data){
console.log(data);
chart = Chartist.Line('.ct-chart', data, options);
}
});
如您所见,当我获取数据时,我会将其传递给chartist js库,并在那里进行各种操作,但我要做的第一件事是将数据记录到控制台
这是从.json文件返回的数据
{
"labels": ["1", "2", "3", "4", "5", "6"],
"series": [
{
"name": "Autonomy",
"meta": [4,2,7,3,9,1],
"data": [1,2,null,null,null,10]
}
]
}
但控制台的输出是:
{
"labels": [
"1",
"2",
"3",
"4",
"5",
"6"
],
"series": [
[
1,
2,
4,
6,
8,
10
]
]
}
请注意,系列[0]中的null
值。数据
是不同的,整个对象已展平为仅数据。当我将返回的数据传递给ChartList时,我会进行各种操作,包括对其余数据平均null值。但是,这不应该在控制台中打印吗?它甚至还没有被传进来
对可能发生的事情有什么想法吗
请注意,我在请求中添加了一个时间戳,试图破坏缓存。非常感谢您的帮助。ChartList上的list方法不是在更改您的值吗?如果您复制解析后的URL并在浏览器上输入,您是否获得了所引用的JSON?还有,你调试过它了吗?这是输出结果的那一行吗?当你在控制台中展开它时,你会看到实际的对象状态。您只需在展开之前更改它即可。尝试
console.log(JSON.parse(JSON.stringify(data))
。这将克隆所有数据,并且不会更改原始数据对象。您是否使用Chrome?控制台中的对象旁边是否有一点蓝色i
?这意味着类似于“对象展开后将重新计算”-即它可能在记录后发生了更改。ChartList上的list方法不是在更改您的值吗?如果您复制解析后的URL并在浏览器上输入它,您是否获得了您引用的JSON?还有,你调试过它了吗?这是输出结果的那一行吗?当你在控制台中展开它时,你会看到实际的对象状态。您只需在展开之前更改它即可。尝试console.log(JSON.parse(JSON.stringify(data))
。这将克隆所有数据,并且不会更改原始数据对象。您是否使用Chrome?控制台中的对象旁边是否有一点蓝色i
?这意味着类似于“对象在展开时将被重新评估”-即它可能在记录后发生了更改。