0

所以我有一个名为 bby_dataset 的全局对象,我正在循环访问一些数据并将其推送到带有扩展的 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 或其他内容。否则,尽管在您必须循环遍历每个对象并通过扩展将其附加为新对象之后,可以简单地添加第一个对象。

4

1 回答 1

0

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

于 2013-08-25T22:14:19.683 回答