• JSON.parse(要转换的json格式的字符串)

    作用:把json格式的字符串转换成js的数组或者对象

    返回值:js格式的数组或对象

    (我们可以手写一个JSON格式的字符串)

  • JSON.stringify(要转换的数组或者对象)

    作用:把js格式的数组或者对象转换成json格式的字符串

    返回值:一个json格式的字符串

json数据格式

  • 描述数组或者对象数据类型

  • 对象中的key和value都是用双引号包裹,数值和布尔值不需要引号

  • 数组里面可以放多个对象

  • 当多个数据的时候,最后一个数据后面不能有逗号,

  • 一个json格式中,在符号位可以使用符号,只有{},[],””,逗号

    “”^(^&())” 引号内可以有特殊符号,表示的是一个字符串

    转换json格式字符串的时候,函数会被自动过滤掉

var obj={
  name:'小明',
  ha:'^*&^*',
  age:18,
  fn:function(){
    console.log('bubumamm')
  }
}
var newObj=JSON.stringify(obj);
console.log('>>>>>>',newObj);   //  {"name":"小明","ha":"^*&^*","age":18}
  • json文件

    • 我们有一种文件格式 ,以.json为扩展名

    • 一个完全的json文件,里面只能写json格式的内容

本地缓存

作用:把一些数据记录在浏览器中,是浏览器提供给我们的一些本地存储数据的机制

  • localStorage 永久缓存,除非手动删除

  • sessionStorage 会话缓存,关闭浏览器就没有了

    共同点:只能存储字符串格式的数据

  • localStrorang

    • localStrorage.setItem(‘名字’,’值’)

      • 存储一条数据

      • 重复设置同一个名字的时候,就是修改数据

      localStorage.setItem('name',8);
      localStorage.setItem('name',{name:8});
                      // 设置的值是一个对象,设置进入本地的实际值为 [object Object]
      console.log(localStorage.getItem('name'));
                      //  [object Object]   存入数据时值为对象,获取的时候是没有办法正确获取的
      var num = {a:1,b=2}
      localStorage.setItem('name',JSON.stringify({name:8}));
      localStorage.setItem('name',JSON.stringify(num));
      //存储对象类型的数据的时候可以先将其转换为josn格式的字符串
      
      console.log(localStorage.getItem('name'))
      //{"name":8} 获取后获得是json格式的字符串,然后在使用JOSN.parse()转换为数组或者对象类型
    • localStorage.getItem(‘名字’)

      • 获取数据,如果获取的是没有设置过的数据,返回null

    • localStorage.removeItem(‘名字’)

      删除一条数据

    • localStorage.clear()

      清除所有的数据

  • sessionStorage

    • sessionStorage.setItem(‘名字’,value)

    • sessionStorage.getItem(‘名字’)

    • sessionStorage.removeItem(‘名字’)

    • sessionStorage.clear()

案例:当用户第一次进入页面,给出提示信息