我收到错误消息:"Cannot read property 'push' of undefined"
I get the error message: "Cannot read property 'push' of undefined"
我编写了一个接受两个数组的函数,因为 arguments.The 第一个是包含对象的数组,第二个是包含整数的数组:
var employees = [{name:"Ash Ketsup"}, {name:"Fronto"}, {name:"Captain"}];
var employeesAge = [25,30,50];
function addNewProp(arr1,arr2){
if (arr1 instanceof Array && arr2 instanceof Array){
var data = [];
for(var i=0; i<arr1.length; i++){
data[i].push({name:arr1[i].name ,age:arr2[i]});
}
};
return data;
alert(data);
};
var check = addNewProp(employees,employeesAge);
alert(check);
我只想制作一个对象数组,它们将具有值 name 和 age。但是我收到 Cannot read 属性 'push' of undefined 错误消息。我不知道我做错了什么。
你能帮帮我吗?
使用这个:
data.push({name:arr1[i].name ,age:arr2[i]});
data
是一个数组,它有一个叫做push的函数。而 data[i]
是名为 data
的数组中索引为 i
的元素。
var data = [];
这意味着数据的长度为0,所以你不能像数据[i]那样访问它。您应该为此使用以下语法:
data.push({
name : arr1[i].name,
age : arr2[i]
});
我编写了一个接受两个数组的函数,因为 arguments.The 第一个是包含对象的数组,第二个是包含整数的数组:
var employees = [{name:"Ash Ketsup"}, {name:"Fronto"}, {name:"Captain"}];
var employeesAge = [25,30,50];
function addNewProp(arr1,arr2){
if (arr1 instanceof Array && arr2 instanceof Array){
var data = [];
for(var i=0; i<arr1.length; i++){
data[i].push({name:arr1[i].name ,age:arr2[i]});
}
};
return data;
alert(data);
};
var check = addNewProp(employees,employeesAge);
alert(check);
我只想制作一个对象数组,它们将具有值 name 和 age。但是我收到 Cannot read 属性 'push' of undefined 错误消息。我不知道我做错了什么。 你能帮帮我吗?
使用这个:
data.push({name:arr1[i].name ,age:arr2[i]});
data
是一个数组,它有一个叫做push的函数。而 data[i]
是名为 data
的数组中索引为 i
的元素。
var data = [];
这意味着数据的长度为0,所以你不能像数据[i]那样访问它。您应该为此使用以下语法:
data.push({
name : arr1[i].name,
age : arr2[i]
});