每樣商品有id, title, price, 每點擊一次購買我就將其加入數組,但是我想根據Id判斷,當重復加入一件產品到購物車的時候,將相同的產品加入一個二維數組,怎么寫呢?[
[
{雞腿},{雞腿},{雞腿},{雞腿}
],
[
{狗腿},{狗腿},{狗腿}
],
[
{貓咪},{貓咪},{貓咪},{貓咪},{貓咪},{貓咪}
]
]謝謝各位,確實我這種思路確實很辣雞,感謝你們的建議!
1 回答
森欄
TA貢獻1810條經驗 獲得超5個贊
上面的朋友說的沒錯,你的這種思路本身不可取。二維數組里面全是一樣的東西。。有點坑。
這種格式好點,參考一下
var cart = { 'id01':{n:'雞腿', count: 4}, 'id02':{n:'鴨腿', count: 3}, 'id03':{n:'豬腿', count: 2}, 'id04':{n:'狗腿子', count: 1}
}不過,如果你非要這樣子做
var list = [
[{n:'雞腿'},{n:'雞腿'},{n:'雞腿'},{n:'雞腿'},{n:'雞腿'}],
[{n:'鴨腿'},{n:'鴨腿'},{n:'鴨腿'},{n:'鴨腿'}],
[{n:'豬腿'},{n:'豬腿'},{n:'豬腿'},{n:'豬腿'}]
];function fn(o){
var inArray = false;
list.map(function(item){
if( item.indexOf(o) > -1){
inArray = true;
item.push(o);
}
});
inArray || list.push([o]);
}
fn(list[1][1]);
fn({n:'狗腿子'});這只是參考,不提倡
