Javascript 未捕获类型错误:无法读取属性';附加项';未定义的
我试图使用jqplot创建一个饼图,但是我在标题中显示了错误。最后,我想使用下面的代码创建不同类型的jqplot图表,因为数据格式基本相同。retrieveData()中的for循环是我创建数据的地方,这些数据将填充生成饼图或条形图的所有项目数组。我想先让它为饼图工作。你也可以找到Javascript 未捕获类型错误:无法读取属性';附加项';未定义的,javascript,jquery,Javascript,Jquery,我试图使用jqplot创建一个饼图,但是我在标题中显示了错误。最后,我想使用下面的代码创建不同类型的jqplot图表,因为数据格式基本相同。retrieveData()中的for循环是我创建数据的地方,这些数据将填充生成饼图或条形图的所有项目数组。我想先让它为饼图工作。你也可以找到 var schoolApp=window.schoolApp | |{}; schoolApp.itemType=新数组(); $(文档).ready(函数(){ 检索数据(); }); 函数retrieveData
var schoolApp=window.schoolApp | |{};
schoolApp.itemType=新数组();
$(文档).ready(函数(){
检索数据();
});
函数retrieveData(){
var allItems=new getItems();
var k=0;
对于(i=0;i您不需要使用window
访问局部变量,只需删除它,它就会工作
function retrieveData() {
var allItems = new getItems();
var k=0;
for (i=0; i<10; i++){
k +=i;
allItems.addItems("Hello"+i, k);
}
chartArray = allItems.getChartData();
plotChart(chartArray);
}
function getItems() {
this.inputs = {};
this.items = [];
this.addItems = function (unqItem, amount1) {
if (!this.inputs[unqItem]) {
this.items.push(unqItem);
this.inputs[unqItem] = 0;
}
this.inputs[unqItem] += amount1;
};
this.getChartData = function () {
var chartAry = [];
for (i = 0; i < this.items.length; ++i) {
chartAry.push([this.items[i], this.inputs[this.items[i]]]);
}
return chartAry;
}
函数retrieveData(){
var allItems=new getItems();
var k=0;
对于(i=0;错误很明显,您正在尝试访问一个不存在的属性:window.allItems
未定义,因此无法访问它。的可能重复项
function retrieveData() {
var allItems = new getItems();
var k=0;
for (i=0; i<10; i++){
k +=i;
allItems.addItems("Hello"+i, k);
}
chartArray = allItems.getChartData();
plotChart(chartArray);
}
function getItems() {
this.inputs = {};
this.items = [];
this.addItems = function (unqItem, amount1) {
if (!this.inputs[unqItem]) {
this.items.push(unqItem);
this.inputs[unqItem] = 0;
}
this.inputs[unqItem] += amount1;
};
this.getChartData = function () {
var chartAry = [];
for (i = 0; i < this.items.length; ++i) {
chartAry.push([this.items[i], this.inputs[this.items[i]]]);
}
return chartAry;
}