详解如何提升JSON.stringify()的性能-创新互联

1. 熟悉的JSON.stringify()

创新互联主营翁源网站建设的网络公司,主营网站建设方案,app软件开发,翁源h5小程序设计搭建,翁源网站营销推广欢迎翁源等地区企业咨询

在浏览器端或服务端,JSON.stringify()都是我们很常用的方法:

  • 将 JSON object 存储到 localStorage 中;
  • POST 请求中的 JSON body;
  • 处理响应体中的 JSON 形式的数据;
  • 甚至某些条件下,我们还会用它来实现一个简单的深拷贝;
  • ……

在一些性能敏感的场合下(例如服务端处理大量并发),或面对大量 stringify 的操作时,我们会希望它的性能更好,速度更快。这也催生了一些优化的 stringify 方案/库,下图是它们与原生方法的性能对比:

绿色部分时原生JSON.stringify(),可见性能相较这些库都要低很多。那么,在大幅的性能提升背后的技术原理是什么呢?

2. 比 stringify 更快的 stringify

由于 JavaScript 是动态性很强的语言,所以对于一个 Object 类型的变量,其包含的键名、键值、键值类型最终只能在运行时确定。因此,执行JSON.stringify()时会有很多工作要做。在一无所知的情况下,我们想要大幅优化显然无能为力。

那么如果我们知道这个 Object 中的键名、键值信息呢 —— 也就是知道它的结构信息,这会有帮助么?

看个例子:

下面这个 Object,

const obj = { 
 name: 'alienzhou', 
 status: 6, 
 working: true 
}; 

网页题目:详解如何提升JSON.stringify()的性能-创新互联
本文链接:http://bzwzjz.com/article/cohehe.html

其他资讯

Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号
友情链接: 企业网站设计 自适应网站设计 手机网站建设 成都网站建设 外贸网站设计方案 成都网站建设 网站建设公司 成都网站制作 企业网站设计 定制网站建设 泸州网站建设 响应式网站设计 成都品牌网站设计 商城网站建设 四川成都网站制作 成都网站建设公司 成都网站制作 网站制作 成都网站建设公司 网站制作公司 宜宾网站设计 营销网站建设