我是一名初学程序员,试图将我的JSONP数组中的四个属性转换为每个项目的新数组。
$.ajax({
url: etsyURL,
dataType: 'jsonp',
success: function(data) {
if (data.ok) {
var a = (data.results);
//create a parent array to store all objects
var bigarray = [];
$.each(a, function(i, item) {
//assign values from response to variables
var atitle = item.title;
var aurl = item.url;
var aimg = item.Images[0].url_75x75;
var aprice = item.price;
//create an object
var object = {
title: atitle,
url: aurl,
img: aimg,
price: aprice
};
//add the object into big array for every each item, unsure
})
}
}
});
我的最终目标是让bigarray
获取以下对象中的所有项目:
bigarray = [{title:"xbox", url:"www.web.com", pic:"www.pic.com/w.png",price:"100"}, {title:"ps4", url:"www.web.com", pic:"www.pic.com/p.png",price:"110"}]
问题
1。如何根据数组中的项目数添加对象?
2。欢迎任何其他方法,即使$ .even被for循环替换,我也会接受答案。
答案 0 :(得分:1)
您正在寻找推送方法,该方法可用于将值添加到数组的末尾。
bigArray = []; // create the array
object = {foo: 'bar'}; // create an object
bigArray.push({object}); // push the object onto the end of the array
答案 1 :(得分:1)
您可以使用 push()将项目添加到数组中,甚至可以修改代码,如下所示
$.ajax({
url: etsyURL,
dataType: 'jsonp',
success: function(data) {
if (data.ok) {
var a = (data.results);
//create a parent array to store all objects
var bigarray = [];
$.each(a, function(i, item) {
//add the object into big array for every each item, unsure
bigarray.push({
title: item.title,
url: item.url,
img: item.Images[0].url_75x75,
price: item.price
});
})
}
}
});