javascript - 購物車的JS底層原理是怎麼樣的?
習慣沉默
習慣沉默 2017-05-19 10:36:16
0
3
589

1.購物車的底層原理是怎麼樣的?怎樣才能完成統計?
2.使用函數傳參做出來前半部分,後半部分該如何實現?
3.程式碼如下:

    网页标题   
  • 0 单价:10元 小计:0
  • 0 单价:7.5元 小计:0
  • 0 单价:15元 小计:0
  • 0 单价:20元 小计:0
  • 0 单价:150元 小计:0

下面那部分的:商品合計一共n件,其中最貴的商品單價是a元,總共花費了b元的那部分該怎麼寫?
變數該如何賦值並統計最後的資料總和?
(程式碼和圖片已貼上)

習慣沉默
習慣沉默

全部回覆 (3)
淡淡烟草味

我把程式碼全貼出來。你看一下

    网页标题   
  • 0 单价:10元 小计:0
  • 0 单价:7.5元 小计:0
  • 0 单价:15元 小计:0
  • 0 单价:20元 小计:0
  • 0 单价:150元 小计:0

单价最高:0

总计:0

    Peter_Zhu

    用物件導向來寫購物車再適合不過了,以下是es6程式碼

    class Cart{ constructor(){ //set,map,array,随你选 this.list = []; } //将商品加入购物车,需要判断购物车内是否有该商品, //以及商品规格是否相同 add(goods){} //将商品移除购物车,这个key可以是id,名称等等,你自己决定 remove(key){} //计算购物车总价,当然,最贵的当然可以计算出来了,排个序就号了 computeMoney(){} //保存购物车,localstorage,服务器,你自己决定,保存之后还是之前更新界面还是你决定 save(){} //清空购物车 clear(){} //购物车是否为空 isEmpty(){} //更多逻辑....... }

    最好為每個方法加上勾子函數(onSave,onAdd,onRemove....),以實現重複使用,解耦

      phpcn_u1582

      原理就是使用者在商品選擇頁點選加號的時候從資料來源拿到資料放到一個新陣列

      var data=res.data; var shopCar=[]; add(index){//点击加号的时候 shopCar[index]=data[index] }

      接著得到一個新的陣列對象,就是購物車清單。
      統計就是把陣列物件裡的價格欄位相加,至於你用什麼方法相加看你自己喜好,我用的reduce。

      如果有減號,也要有對應的減去運算。

        最新下載
        更多>
        網站特效
        網站源碼
        網站素材
        前端模板
        關於我們 免責聲明 Sitemap
        PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!