JSON.stringify怎么用
发表于:2025-02-05 作者:千家信息网编辑
千家信息网最后更新 2025年02月05日,这篇文章将为大家详细讲解有关JSON.stringify怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。基础JSON.stringify 方法接收一个变量,并将
千家信息网最后更新 2025年02月05日JSON.stringify怎么用
这篇文章将为大家详细讲解有关JSON.stringify怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
基础
JSON.stringify
方法接收一个变量,并将它转换成 JSON 表示形式。
const boy = { name: 'John', age: 23 };JSON.stringify(boy);// {"name":"John","age":23}
JSON 就是纯字符串,它本质上是 JS 的一个子集,所以并不是所有的 JS 对象都能转换为 JSON:
const boy = { name: 'John', age: 23, hobbies: new Map([[0, 'coding'], [1, 'earn money']])}JSON.stringify(boy)// {"name":"John","age":23,"hobbies":{}}
上面的例子中 Map 对象就会被忽略并转换为普通对象。而如果属性是函数的话则这个属性就会被忽略,感兴趣的同学可以试下。
第二个参数
JSON.stringify
可以接收第二个参数,可以称为 replacer
替换器。
你可以传入一个字符串数组,这个数组中具有的属性才会被转换,就像一个白名单。
const boy = { name: 'John', age: 23}JSON.stringify(boy, ['name'])// {"name":"John"}
我们可以利用这个特性,只转换需要转换的属性,过滤掉如很长的数组、错误对象等。
这个 replacer
参数还可以接收一个函数。这个函数会遍历整个对象,并将键和值传入,让你决定该如何替换它们。
const boy = { name: 'John', age: 23, hobbies: new Map([[0, 'coding'], [1, 'earn money']])}JSON.stringify(boy, (key, value) => { if (value instanceof Map) { return [...value.values()] } return value})// {"name":"John","age":23,"hobbies":["coding","earn money"]}
而如果你返回了 undefined
(返回 null
不行),就将这个属性移除了:
JSON.stringify(boy, (key, value) => { if (typeof value === 'string') { return undefined } return value})// {"age":23,"hobbies":{}}
第三个参数
第三个参数 space
控制了转换后的 JSON 串的间距。
如果参数是数字,则以该数字个数的空格进行缩进:
JSON.stringify(boy, null, 2)// {// "name": "John",// "age": 23,// "hobbies": {}// }
而如果参数是字符串,则以该字符串进行缩进:
JSON.stringify(boy, null, '--')// {// --"name": "John",// --"age": 23,// --"hobbies": {}// }
toJSON 方法
如果我们要转换的对象具有一个 toJSON
方法,那么就可以定制自己被序列化的过程。您可以从方法中返回一个新值,而不是序列化该对象,并且此值将被序列化,而不是原始对象。
const boy = { name: 'John', age: 23, hobbies: new Map([[0, 'coding'], [1, 'earn money']]), toJSON() { return { name: `${this.name} (${this.age})`, favorite: this.hobbies.get(0) } }}JSON.stringify(boy)// {"name":"John (23)","favorite":"coding"}
关于"JSON.stringify怎么用"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
对象
参数
属性
字符
字符串
方法
函数
序列
数组
篇文章
三个
数字
更多
并将
不行
不错
原始
实用
普通
个数
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
发一下数据库
数据库数据设计怎么写
嘉兴数据库审计哪家专业
网络安全关后感
永劫无间火男捏脸数据库
戴尔emc全新服务器有没有系统
atml软件开发
登录服务器连接错误
云全栈北京软件开发公司
思迅软件数据库还原
利用数据库实现翻译功能
税务网络安全
软件开发外包公司工资
数据库信息查看
存钱返利app软件开发
网络数据库架构分析
关于网络安全的真实报道
数据库 回复挂起
网络安全绘画图片
计算机网络技术基础出版年
网络安全技能篇
前端如何实现登陆访问数据库
虹口区特定软件开发定制价格
威猛删数据库
河北学安网络安全有限公司
方舟服务器基础管理
网络安全文明宣言
服务器辐射 孕妇
数据库的隔离级别和并发问题
网络安全华哥