找回密码
 立即注册

QQ登录

只需一步,快速开始

swejet悬赏达人认证 活字格认证
论坛元老   /  发表于:2022-6-23 10:41:15
11#
我不知道我这个比喻对不对啊,不对大家批评指正。
这是翻译的锅

json序列化是把一个结构性的json型的数据转换为没有结构的一串字符串。

什么叫json型数据:就是一个键值对,有一个名字,叫键名,有一个值,是这个键名的值。键和值,结合成了一个结构,所以我们说键值对是结构化的。

比如,你在预审室里,条子会问你:

条子:姓名?
你:张三

条子:性别?
你:男

条子:年龄?
你:73

这就形成了三个键值对,分别是

  1. {
  2. "姓名":"张三";
  3. "性别":"男";
  4. "年龄":73
  5. }
复制代码



但是,这种方式没办法传输啊,又是引号又是分号的,http只认字符串啊,所以,你得把这个结构转换成纯文本的形式,这个过程叫json的序列化,其实所谓的序列,就是排成行嘛,你没听过那个儿歌吗?哥唐市的早上雾茫茫,告状的人群排成行……

排成一行,就没有大小个了,没有等级,没有差异,只有顺序了,这叫序列化,就是把一个有结构的信息拆解开来,变成一个没有结构的纯数据(字符也是数据)

只有字符,才能在http上传输


然后,接收到这个字符的怎么办呢?要把这一串字符重新解构成一个结构化的数据,把一个结构化的信息拆成一个没有结构的字符串叫序列化了,那反过来,把一个没有结构的字符串变为结构化的信息,这当然叫反序列化了,这个词儿就是这么来的。

这和中国人的理解是反的,中国人觉得,有结构的信息是序列,有序有列嘛,把一个有结构的信息拆了,没序没列了,这不应该叫反序列化嘛。这就是东西方文化的差异。中国象棋把棋子儿放在交点上,西方人把棋子儿放在块中央;中国人喝热水,西方人喝冰水。总之都是反的。

然后,这个

  1. {
  2. "姓名":"张三";
  3. "性别":"男";
  4. "年龄":73
  5. }
复制代码
就这么个玩应儿,到底应该叫什么呢?你不能就管它叫玩应儿吧?它是什么玩应儿呢?也不能就管它叫东西吧?这玩应儿是个什么东西呢?

后来大家就合计,起个名儿吧,爹娘都给起了名了,就叫“对象”吧

评分

参与人数 1满意度 +5 收起 理由
林小鱼 + 5

查看全部评分

回复 使用道具 举报
金麒麟-信息部
金牌服务用户   /  发表于:2022-6-23 11:18:04
12#
Chelsey.Wang 发表于 2022-6-23 10:10
楼上大佬正解,JS对象可以理解为一种数据类型,使用json序列化命令可以将JS对象转换为字符串,使用反序列 ...


Json与对象的互转经常使用,我的疑问是,下图中的对象貌似要从设计器上的单元格选择来源,这个对象体现在单元格上应该是什么样的呢,有示例数据吗,看一下应该就明白了。



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
Chelsey.Wang讲师达人认证 悬赏达人认证 活字格认证
论坛元老   /  发表于:2022-6-23 16:12:27
13#
金麒麟-信息部 发表于 2022-6-23 11:18
Json与对象的互转经常使用,我的疑问是,下图中的对象貌似要从设计器上的单元格选择来源,这个对象体现 ...

这里一般是选择一个变量,比如使用设置变量命令获取到的多行记录:
传递给服务端命令的数组类型参数:

他们就是对象数组,即数组项为对象的数组。
不经过序列化直接返回前端页面的话就是这样的:

序列化之后再返回前端页面就可以看到具体的内容:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
林小鱼
金牌服务用户   /  发表于:2024-3-24 15:00:24
14#
swejet 发表于 2022-6-23 10:41
我不知道我这个比喻对不对啊,不对大家批评指正。
这是翻译的锅

好形象 好形象 牛逼
回复 使用道具 举报
Joe.xu讲师达人认证 悬赏达人认证 活字格认证
超级版主   /  发表于:2024-3-25 08:54:44
15#
回复 使用道具 举报
12
您需要登录后才可以回帖 登录 | 立即注册
返回顶部