jquery对象用相同的对象扩展

时间:2013-08-24 05:25:22

标签: jquery json jsonp extend

所以我有一个名为bby_dataset的全局对象,我正在循环浏览一些数据并将其推送到带有extend的bby_dataset。除了推送的数据集总是从0开始。所以当我第二次进行扩展时,第一个数据集被覆盖。

var bby_dataset = {};
function bby_test(page) {
$.ajax({
    type: "GET",
    url: "http://api.remix.bestbuy.com/v1/products(productTemplate=Printers)?format=json&show=manufacturer,sku,modelNumber,name,regularPrice&pageSize=100&page="+page+"&apiKey={APIKEY}",
    cache: true,
    dataType: 'jsonp',
    success: function (data) {
        if(data.totalPages != page){
            $.extend(bby_dataset, data.products);
            bby_test(data.currentPage + 1);
        }else{
            $.extend(bby_dataset, data.products);
            bby_call(bby_dataset);
        }
    }
});
}
bby_test(1);

对象看起来像以下obj1:{0},{1},{2} obj2:{0},{1},{2}。所以bby_dataset第一个循环接受obj1但是当obj2经过时,数据被替换而不是扩展。我无法真正展示结果。

要清楚我明白它不起作用,因为上面我想知道是否有一种方法可以像追加到自动将名称自动更改为3,4,5或其他东西。否则,虽然第一个可以简单地添加到那里,然后你必须遍历每个对象并通过extend将它作为新对象附加。

1 个答案:

答案 0 :(得分:0)

虽然这个问题仍然存在,但我在对象本身找到了解决方案,我将其切换为数组,一切正常。