博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
用localStorage存储购物车数据实战
阅读量:5977 次
发布时间:2019-06-20

本文共 769 字,大约阅读时间需要 2 分钟。

最近做了一个商城项目,那肯定要做个购物车的嘛,于是我就想用localstorage存储商品,以便用户下次进入网页还可以看到自己收藏过的商品。业务方面,就保存商品数量、商品id和商品详情就好了。

接下来是项目实战

// 加购物车  let k = 0; // 定义一个参数,用在循环中计算是否有这个商品id,如果没有,就把商品添加到gifts中,如果有,那这个商品的num增加  let gift = {    id: this.giftDetail.goods_id,    gift: this.giftDetail,    num: this.num  };  let gifts = localStorage.getItem("gifts")    ? JSON.parse(localStorage.getItem("gifts"))    : [];  for (let i = 0; i < gifts.length; i++) {    let item = gifts[i];    if (item.id === gift.id) {      item.num += gift.num;    } else {      k = k + 1;    }  }  if (k === gifts.length) {    gifts.push(gift);  } localStorage.setItem("gifts", JSON.stringify(gifts));复制代码

注意点:

  1. 数组存localstorage是需要序列化的,否则会自动调用toString()方法。
  2. 需要用k来计算是否有这个商品是否存在。

转载于:https://juejin.im/post/5cee4d1a5188250193199764

你可能感兴趣的文章
ExtJS grid简单应用之 展示JSON数据
查看>>
依赖范围
查看>>
ARC下的所有权修饰符
查看>>
sonar 代码质量管理平台
查看>>
CSVHelper在Asp.Net MVC中的使用
查看>>
《学得少考得好》读书笔记
查看>>
推荐!Sublime Text 最佳插件列表
查看>>
SLAVE为什么一直不动了
查看>>
(转)ubuntu 文件系统
查看>>
c++基础_特殊回文数
查看>>
Linux初学 - SSH
查看>>
海洋女神建新installshield交流群了,原来的老群都满了,请加新群哦,记得认真填写验证信息...
查看>>
EBCDIK,EBCDIC,ASCII,shift JIS間の変換
查看>>
pre_forum_thread 主题表跟pre_forum_thread内容表是用哪个字段对应起来的?
查看>>
python的一些常用操作
查看>>
jsp的9个内置对象
查看>>
[Apio2012]dispatching 主席树做法
查看>>
无线网络会议和期刊
查看>>
【剑指offer】反转链表,C++实现(链表)
查看>>
皇后游戏
查看>>