c++聊天室json理解(6)

追求适度,才能走向成功;人在顶峰,迈步就是下坡;身在低谷,抬足既是登高;弦,绷得太紧会断;人,思虑过度会疯;水至清无鱼,人至真无友,山至高无树;适度,不是中庸,而是一种明智的生活态度。

导读:本篇文章讲解 c++聊天室json理解(6),希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

什么是json

JSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式。它基于 ECMAScript(欧洲计算机协会制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。

json的特点

1.数据格式比较简单, 易于读写, 格式都是压缩的, 占用带宽小
2.易于解析这种语言, 客户端JavaScript可以简单的通过eval()进行JSON数据的读取
3.因为JSON格式能够直接为服务器端代码使用, 大大简化了服务器端和客户端的代码开发量, 但是完成的任务不变, 且易于维护

json语法 key-value

JSON 数据的书写格式是:{Key:Value}{Key:Array}。
注意:如果是字符串则需要用引号
例如:{"name" : "晋二"}等价于js语句的name="晋二"

JSON数据结构中的value的取值:
string(双引号中)、number、object(花括号中)、array(方括号中)、boolean(true/false),null

为什么需要json

等到去了公司做前后端分离的项目的时候,大家会发现前端与后端交互大部分都是接口(其实就是用json装的一些数据),举个栗子,用户在浏览器输入了用户名和密码要登录,这个输入的用户名和密码肯定会发到后台,后台进行一系列的处理并且给前台反馈结果,画个图就是这样的:

在这里插入图片描述

json的序列化与反序列化

在这里插入图片描述

json.parse() and json.stringfy()

json.parse()(反序列化)

JSON.parse(text[, reviver])
text:必需, 一个有效的 JSON 字符串。
reviver: 可选,一个转换结果的函数, 将为对象的每个成员调用此函数

json.stringfy(value[, replacer[, space]])value:

必需, 要转换的 JavaScript 值(通常为对象或数组)。

replacer:
可选。用于转换结果的函数或数组。

如果 replacer 为函数,则 JSON.stringify 将调用该函数,并传入每个成员的键和值。使用返回值而不是原始值。如果此函数返回 undefined,则排除成员。根对象的键是一个空字符串:“”。

如果 replacer 是一个数组,则仅转换该数组中具有键值的成员。成员的转换顺序与键在数组中的顺序一样。当 value 参数也为数组时,将忽略 replacer 数组。

space:
可选,文本添加缩进、空格和换行符,如果 space 是一个数字,则返回值文本在每个级别缩进指定数目的空格,如果 space 大于 10,则文本缩进 10 个空格。space 也可以使用非数字,如:\t

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/129725.html

(0)
飞熊的头像飞熊bm

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!