json数据 & 本地存储

256 阅读2分钟

json

  • 是用来存储数据的一种格式 Javascript Object Notation(Javascript对象表示法)
  • 是存储交换文本信息的语法,类似于XML,json比XML更小,更快,更易解析
  • 是轻量级的文本数据交换格式
  • 是对立于语言,使用Javascript语法来描述数据对象
  • json解析器和json库支持许多不同的编程语言

为什么用JSON

对应ajax应用程序,更快更易使用 使用json,读取json字符串,处理json字符串

语法规则

json语法是Javascript对象表示语法的子集

  • 数据在名称/值中,
  • 数据由逗号分割
  • 大括号保存对象
  • 中括号[] 保存数组,数组可以包含多个对象
  • //写在双引号中 key:value "name":"zs"

JSON值可以是 :数字(整数或浮点型),字符串,布尔值,数组,对象,null

json文件的文件类型是.json

json文本的MIME类型是application/json

转换

JSON.parse(str) 把json字符串转换为json对象

JSON.stringify(jsonObj) 把对象转换为字符串

本地存储

为了满足我们各种各样的需求,会经常性的在本地存储大量的数据,HTML5规范提出了相关的解决方案

特性

  • 数据存储在用户浏览器中
  • 设置、读取方便,页面刷新不丢失数据
  • 容量较大,sessionStorage大约5M,localStorage大约20M
  • 只能存储字符串, 可以将对象JSON.stringify编码后存储

window.sessionStorage

  • 生命周期为关闭浏览器窗口
  • 在同一个窗口 (页面)下数据可以共享
  • 以键值对的形式存储使用

存储数据

sessionStorage.setItem(key,value)

读取数据

sessionStorage.getItem(key)

删除数据

sessionStorage.removeItem(key)

清空数据

sessionStorage.clear()

window.localStorage

  • 生命周期永久生效,除非手动删除,否则关闭页面也会存在
  • 可以多窗口(页面)共享(同一浏览器可以共享)
  • 以键值对的形式存储使用

存储数据

localStorage.setItem(key,value)

获取数据

localStorage.getItem(key)

删除数据

localStorage.removeItem(key)

清空数据

localStorage.clear()