温故而知新之- Javascript JSON

举报
余人杰 发表于 2020/09/27 16:34:40 2020/09/27
【摘要】 复习下一个很重要的知识点:JSON

复习下一个很重要的知识点:JSON。


JSON我们在以后跟后端对接数据时,后端API接口返回值大多是JSON格式。


首先,我们回顾下,何为JSON?

json 是一种数据交换格式,而且它是轻量级的、易于人阅读、易于编写。

特点:

1.json 是前后端传输交互数据的主要格式,替换 xml 的最佳方式是使用json 数据格式,目前主流语言都很好的支持json 格式。

2.json 标准中要求使用双引号包裹属性,虽然有些语言不强制,但使用双引号可避免多程序间传输发生错误语言错误的发生。


它长什么样?请看

let hw = {
  "name": "余人杰",
  "id": "hw91364016",
  "like": {
  	"name": "Web",
  }
}
console.log(hw.like.name);


上面介绍的是对象的JSON结构,如果是数组的JSON结构呢?

let fruits = [
  {
    "name": 'apple',
    "price": 3
  },
  {
     "name": 'pear',
    "price": 10
  },
  {
     "name": 'peach',
    "price": 5
  }
];

console.log(fruits[0].name);


JSON中有两个知识点,序列化和反序列化。

前者是指将 json 转换为字符串,用来传输给其他语言进行使用

后者是指使用 JSON.parse 将字符串 json 解析成对象


序列化例子:

let hw = {
  "name": "余人杰",
  "id": "hw91364016",
  "like": {
  	"name": "Web",
  }
}
console.log(JSON.stringify(hw)); // {"name":"余人杰","id":"hw91364016","like":{"name":"Web"}}

JSON.stringify()有三个参数。

第一个是指要被转换成字符串的对象;

第二个是指被指定保存的属性;

第三个是用来TAB控制数量的;


反序列化例子:

let hw = {
  "name": "余人杰",
  "id": "hw91364016",
  "like": {
  	"name": "Web",
  }
}
let jsonHw = JSON.stringify(hw);
console.log(JSON.parse(jsonHw));


心得: JSON是我们前端学习者必须要掌握的一个知识点,这个知识点在我们跟后端数据交互时,经常用到的。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。