jQuery检查旧值的数组并将新值推送到数组

时间:2016-04-15 08:48:35

标签: jquery arrays

我正在尝试将对象推送到数组,如果用户更改了select选项,则再次按下该对象,但用相同的product_id替换前一个对象。

任何帮助都会感激不尽,谢谢。

function variationCheck(data) {
    for (var i = 0; i < variationArray.length; i++) {
        if (variationArray[i].product_id === data.id) {
            var pushData = {'product_id':data.id,'variation_id':data.variation,'attribute_covers':data.covers,'attribute_extras':data.extras};
            variations.push(pushData);
            console.log(variations);
            for(var c = 0; c < variations.length; c++) {
                if(variations[c].product_id === data.id) {
                    variations.splice(c, 1);
                    var pushData = {'product_id':data.id,'variation_id':data.variation,'attribute_covers':data.covers,'attribute_extras':data.extras};
                    variations.push(pushData);
                    console.log(variations);
                }
            }
        };
    };
};

1 个答案:

答案 0 :(得分:0)

使用Object而不是Array作为数据结构。到目前为止,据我所知,product_id是唯一的,所以它应该是关键。

function variationCheck(data) {
    variationsObject[data.productId] = data;
};