当前位置:首页 > 科技  > 软件

关于 JSON.stringify,你不知道的六件事

来源: 责编: 时间:2024-03-25 17:37:01 146观看
导读对于 JSON.stringify 这个方法我相信大家都很熟悉了,一般用来将一个对象或者数组转成字符串,也就是一个 JSON,然后让接口携带并传到后端。但是你真的很了解 JSON.stringify 吗?往下阅读,看你是不是真的了解它~第二个参数传

对于 JSON.stringify 这个方法我相信大家都很熟悉了,一般用来将一个对象或者数组转成字符串,也就是一个 JSON,然后让接口携带并传到后端。PxI28资讯网——每日最新资讯28at.com

PxI28资讯网——每日最新资讯28at.com

PxI28资讯网——每日最新资讯28at.com

但是你真的很了解 JSON.stringify 吗?往下阅读,看你是不是真的了解它~PxI28资讯网——每日最新资讯28at.com

第二个参数传数组Array

JSON.stringify 的第二个参数传数组时,那么它只会转换数组中的 key,比如下面例子中,只会转换 name 属性:PxI28资讯网——每日最新资讯28at.com

PxI28资讯网——每日最新资讯28at.com

PxI28资讯网——每日最新资讯28at.com

第三个参数传数字Number

JSON.stringify 的第三个参数传数字时,这个数字会被当成 JSON 的缩进级别。PxI28资讯网——每日最新资讯28at.com

比如下面例子,分别是2空格、4空格、6空格缩进:PxI28资讯网——每日最新资讯28at.com

PxI28资讯网——每日最新资讯28at.com

PxI28资讯网——每日最新资讯28at.com

第三个参数传字符串String

JSON.stringify 的第三个参数传字符串时,这个字符串会被当成 JSON 的缩进占位符:PxI28资讯网——每日最新资讯28at.com

PxI28资讯网——每日最新资讯28at.com

PxI28资讯网——每日最新资讯28at.com

toJSON

如果被转换的对象中有 toJSON 这个方法的话,那么当JSON.stringify进行转换后,会获取这个toJSON方法的执行返回值:PxI28资讯网——每日最新资讯28at.com

PxI28资讯网——每日最新资讯28at.com

PxI28资讯网——每日最新资讯28at.com

JSON.stringify 局限性

很多人使用 JSON.stringify 来做深拷贝,但是这是万万不行的,因为它是有局限性的:PxI28资讯网——每日最新资讯28at.com

PxI28资讯网——每日最新资讯28at.com

从下面例子可以看出:PxI28资讯网——每日最新资讯28at.com

  • undefined、function、symbol 在转换后直接被忽略了
  • 正则表达式转换成对象,日期转换成字符串
  • NaN、Infinity 直接变成 null

所以千万不要用 JSON.stringify 来做深拷贝!!!得不到满意的结果的!!!PxI28资讯网——每日最新资讯28at.com

PxI28资讯网——每日最新资讯28at.com

环引用报错

对包含循环引用的对象(对象之间相互引用,形成无限循环)执行此方法,会抛出错误。PxI28资讯网——每日最新资讯28at.com

以前旧版的浏览器和Nodejs是会直接报错的,但是貌似现在新版的不会报错了:PxI28资讯网——每日最新资讯28at.com

PxI28资讯网——每日最新资讯28at.com


PxI28资讯网——每日最新资讯28at.com

本文链接://www.dmpip.com//www.dmpip.com/showinfo-26-79149-0.html关于 JSON.stringify,你不知道的六件事

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: Vite 为什么快呢?快在哪?说一下我自己的理解吧

下一篇: 产业人士称尼康正向中国“头部”新能源汽车品牌供应光刻机设备

标签:
  • 热门焦点
  • Find N3入网:最高支持16+1TB

    Find N3入网:最高支持16+1TB

    OPPO将于近期登场的Find N3折叠屏目前已经正式入网,型号为PHN110。本次Find N3在外观方面相比前两代有很大的变化,不再是小号的横向折叠屏,而是跟别的厂商一样采用了较为常见的
  • 鸿蒙OS 4.0公测机型公布:甚至连nova6都支持

    鸿蒙OS 4.0公测机型公布:甚至连nova6都支持

    华为全新的HarmonyOS 4.0操作系统将于今天下午正式登场,官方在发布会之前也已经正式给出了可升级的机型产品,这意味着这些机型会率先支持升级享用。这次的HarmonyOS 4.0支持
  • 天猫精灵Sound Pro体验:智能音箱没有音质?来听听我的

    天猫精灵Sound Pro体验:智能音箱没有音质?来听听我的

    这几年除了手机作为智能生活终端最主要的核心之外,第二个可以成为中心点的产品是什么?——是智能音箱。 手机在执行命令的时候有两种操作方式,手和智能语音助手,而智能音箱只
  • 一加首款折叠屏!一加Open渲染图出炉:罕见单手可握小尺寸

    一加首款折叠屏!一加Open渲染图出炉:罕见单手可握小尺寸

    8月5日消息,此前就有爆料称,一加首款折叠屏手机将会在第三季度上市,如今随着时间临近,新机的各种消息也开始浮出水面。据悉,这款新机将会被命名为“On
  • 使用AIGC工具提升安全工作效率

    使用AIGC工具提升安全工作效率

    在日常工作中,安全人员可能会涉及各种各样的安全任务,包括但不限于:开发某些安全工具的插件,满足自己特定的安全需求;自定义github搜索工具,快速查找所需的安全资料、漏洞poc、exp
  • 拼多多APP上线本地生活入口,群雄逐鹿万亿市场

    拼多多APP上线本地生活入口,群雄逐鹿万亿市场

    Tech星球(微信ID:tech618)文 | 陈桥辉 Tech星球独家获悉,拼多多在其APP内上线了“本地生活”入口,位置较深,位于首页的“充值中心”内,目前主要售卖美食相关的
  • 阿里瓴羊One推出背后,零售企业迎数字化新解

    阿里瓴羊One推出背后,零售企业迎数字化新解

    作者:刘旷近年来随着数字经济的高速发展,各式各样的SaaS应用服务更是层出不穷,但本质上SaaS大多局限于单一业务流层面,对用户核心关切的增长问题等则没有提供更好的解法。在Saa
  • 消息称小米汽车开始筛选交付中心:需至少120个车位

    消息称小米汽车开始筛选交付中心:需至少120个车位

    IT之家 7 月 7 日消息,日前,有微博简介为“汽车行业从业者、长三角一体化拥护者”的微博用户 @长三角行健者 发文表示,据经销商集团反馈,小米汽车目前
  • Android 14发布:首批适配机型公布

    Android 14发布:首批适配机型公布

    5月11日消息,谷歌在今天凌晨举行了I/O大会,本次发布会谷歌带来了自家的AI语言模型PaLM 2、谷歌Pixel Fold折叠屏、谷歌Pixel 7a手机,同时发布了Androi
Top
Baidu
map