84669 人學習
152542 人學習
20005 人學習
5487 人學習
7821 人學習
359900 人學習
3350 人學習
180660 人學習
48569 人學習
18603 人學習
40936 人學習
1549 人學習
1183 人學習
32909 人學習
1.購物車的底層原理是怎麼樣的?怎樣才能完成統計?2.使用函數傳參做出來前半部分,後半部分該如何實現?3.程式碼如下:
网页标题 0 单价:10元 小计:0元 0 单价:7.5元 小计:0元 0 单价:15元 小计:0元 0 单价:20元 小计:0元 0 单价:150元 小计:0元
下面那部分的:商品合計一共n件,其中最貴的商品單價是a元,總共花費了b元的那部分該怎麼寫?變數該如何賦值並統計最後的資料總和?(程式碼和圖片已貼上)
我把程式碼全貼出來。你看一下
网页标题 0 单价:10元 小计:0元 0 单价:7.5元 小计:0元 0 单价:15元 小计:0元 0 单价:20元 小计:0元 0 单价:150元 小计:0元 单价最高:0元 总计:0元
单价最高:0元
总计:0元
用物件導向來寫購物車再適合不過了,以下是es6程式碼
class Cart{ constructor(){ //set,map,array,随你选 this.list = []; } //将商品加入购物车,需要判断购物车内是否有该商品, //以及商品规格是否相同 add(goods){} //将商品移除购物车,这个key可以是id,名称等等,你自己决定 remove(key){} //计算购物车总价,当然,最贵的当然可以计算出来了,排个序就号了 computeMoney(){} //保存购物车,localstorage,服务器,你自己决定,保存之后还是之前更新界面还是你决定 save(){} //清空购物车 clear(){} //购物车是否为空 isEmpty(){} //更多逻辑....... }
最好為每個方法加上勾子函數(onSave,onAdd,onRemove....),以實現重複使用,解耦
原理就是使用者在商品選擇頁點選加號的時候從資料來源拿到資料放到一個新陣列
var data=res.data; var shopCar=[]; add(index){//点击加号的时候 shopCar[index]=data[index] }
接著得到一個新的陣列對象,就是購物車清單。統計就是把陣列物件裡的價格欄位相加,至於你用什麼方法相加看你自己喜好,我用的reduce。
如果有減號,也要有對應的減去運算。
我把程式碼全貼出來。你看一下
用物件導向來寫購物車再適合不過了,以下是es6程式碼
最好為每個方法加上勾子函數(onSave,onAdd,onRemove....),以實現重複使用,解耦
原理就是使用者在商品選擇頁點選加號的時候從資料來源拿到資料放到一個新陣列
接著得到一個新的陣列對象,就是購物車清單。
統計就是把陣列物件裡的價格欄位相加,至於你用什麼方法相加看你自己喜好,我用的reduce。
如果有減號,也要有對應的減去運算。