js,json字符串的使用方法,localstorage本地存储,cookie存储

josn字符串

json字符串
json格式的字符串
“abc123truelkgsjhgo” 普通字符串
“< h1>hgahgo< /h1>” html格式字符串
键值对格式 键和值都需要用双引号去包括 ‘“name”:“yasuo”’

json用途:

在网络传输时使用。 比如前后端交互。
不能够传输对象和数组的。
只能通过字符串形式去传输数据。
所以说我们如果要传输对象和数组,我们需要将其转换为字符串。
json格式就是满足对象和数组数据结构的一种字符串

json的使用方法:

  • JSON.parse()
    把json格式的字符串转为js中的数组或对象
    parse() 这个方法会新创建一个对象或数组
  • json.stringify()
    把js中的数组或对象转为json字符串

对象: ‘{“属性名”:“属性值”,“属性名2”:“属性值2”,“属性名3”:“属性值3”}’

数组:
1.存储数组不是对象。
‘[1,2,3,4]’
2.存储数组为对象
‘[{“name”:“亚索”,“age”:“28”,“skill”:“狂风绝息斩”},{“name”:“劫”,“age”:20,“skill”:“瞬狱影杀阵”}]’

数字和布尔值可以不用带双引号
对象在转json字符串时,函数会被自动过滤掉。

示例:

 <script>
        var obj = {
    
            name: "亚索",
            age: "28",
            skll: "哈撒给"
        }
        // 对象转成字符串
        var str = JSON.stringify(obj);
        console.log(str);
        console.log(typeof str);
 </script>

在这里插入图片描述

   <script>
        // 数组转成字符串
        var arr = [1, 1, 5, 4, 7];
        var str = JSON.stringify(arr);
        console.log(str);
        console.log(typeof str);
        // 生成新数组
        var arr2 = JSON.parse(str);
        console.log(arr2);
        console.log(typeof arr2);
  </script>

在这里插入图片描述

 <script>
        // 生成新的对象
        var str = '{"name":"提莫","join":"提莫队长正在送命"}'
        var obj = JSON.parse(str);
        console.log(obj);
 </script>

在这里插入图片描述

localstorage本地存储

本地:
不会对服务器造成负担
提高访问速度
会占用本地内存

localstorage h5新增的 IE8以下不兼容 5MB
sessionstorage 5M

共同点:
都是将数据存储在本地中
只能存储字符串
区别:
localstorage 永久存储的 除非手动删除
sessionstorage 会话缓存
会话结束时失效
1.代码控制结束
2.浏览器关闭/窗口关闭

使用:

  1. 先考虑兼容性问题
    if(!window.localStorage){
    alert(“该浏览器不支持localstorage!”)
    return false;
    }else{
    //业务逻辑
    }
  2. 将数组存储到localstorage
    三种写法:
    key value
    storage[“name”] = “yasuo”;
    storage.setItem(“name”,“sss”)
    storage.age = 18;
  3. 读取
    storage[“键”];
    storage.getItem(“键”)
    storage.键;
  4. 删除
    storage.removeItem(“age”);
  5. 修改:
    用同一个键去赋不同的值就是修改
  6. 清除全部
    storage.clear();
  7. 获取所有的键值
      for (var i = 0; i < storage.length; i++) {
            var key = storage.key(i);
            var value = storage.getItem(key); 
           }

【注意】 localstorage只能存储字符串,如果将对象或者数组放入,取出来时是string类的数据。

如果要存储对象或数组,则先将对象或者数组转为json的字符串,然后再存储,需要时,取出并将其转为对象或数组使用、。

存储事件:永久存储的
同源性:
不同的域名下存储的数据是不共同的

示例

<script>
        console.log(window.localStorage);
        var storage = window.localStorage;
        // 将数组存储到localstorage的三种写法
        storage["name"
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值