使用以下代码
$.getJSON('services/getCharts.php', function(json) {
var $line1 = [];
$.each(json.posts, function() {
$line1 = $line1.push([this.post.rectime,this.post.actual_value]);
});
...
});
使用JQuery给出了以下错误:
未捕获的TypeError:对象1没有方法'push'
任何人都可以帮我找到错误吗? 非常感谢
答案 0 :(得分:6)
替换
$line1 = $line1.push([this.post.rectime,this.post.actual_value]);
与
$line1.push([this.post.rectime,this.post.actual_value]);
push更改接收器数组并返回新长度。
您收到此精确错误消息,因为当您尝试在其上调用1
方法时,长度(Number
)会提升为push
。
答案 1 :(得分:4)
push
方法返回数组的新长度,而不是新数组,它会修改正在调用的数组:
$.each(json.posts, function() {
$line1.push([this.post.rectime,this.post.actual_value]);
});
答案 2 :(得分:0)
这是一个非常紧凑的语法:
return Array.reduce(things, function(total, thing) {
return total.concat([thing]);
}, [])
这:
return total.concat([result])
效果与此相似:
total.push(result);
return total;