一、 JSON.stringify() 的使用

JSON.stringify() 方法能将一个 JavaScript 对象或值转换成一个 JSON 字符串。

//初始化一个 user 对象
const user = {"name": 'Erick',"age": 24
{console.log(user)// [object Object]

console.log() 没有帮助我们打印出期望的结果。

它输出 [object Object],并不是原始字符串形式。因此,我们使用 JSON.stringify() 首先将对象转换成字符串,然后在控制台中打印,如下所示。

const user = {"name": 'Erick',"age": 23
}console.log(JSON.stringify(user))// {"a":"111","b":23}

第二个参数(数组)

有一个对象 person 并且我们想知道 person 的 name 属性值。当我们将其打印出来:

console.log(JSON.stringify(person));

输出结果:

{"id":"1","age":"23","name":"Erick"}  // person对象

当对象变大时,我们只想找到对象中的某一个属性。就可以利用stringify函数的第二个参数。

console.log(JSON.stringify(person, ['name']))// {"name":"Erick"}

第二个参数(函数)

它根据函数中写入的逻辑来计算每个键值对。如果返回undefined,则不会打印键值对。请参考示例以获得更好的理解。

const user = {"name": 'Erick',"age": 23
}console.log(JSON.stringify(user, (key, value) => {if (typeof value === 'string') {return undefined;}return value;
}))// { "age": 23 }

第三个参数(数字)

第三个参数控制最后一个字符串的间距。如果参数是一个数字,则字符串化中的每个级别都将缩进这个数量的空格字符。

// 注意:为了达到理解的目的,使用 '--' 替代了空格
console.log(JSON.stringify(person, ['name'], 2))
// {// --"name": "Erick"
// }

第三个参数(字符串)

console.log(JSON.stringify(person, ['name'], '**'))
// {// **"name": "Erick"
// }

二、 toJSON 方法

toJSON 的方法,它可以作为任意对象的属性。JSON.stringify返回这个函数的结果并对其进行序列化,而不是将整个对象转换为字符串。

const user = {"firstName": 'zzz',"lastName": 'ran',"age": 23,toJSON() {return {fullName: `${this.firstName} ${this.lastName}`}}
}console.log(JSON.stringify(user))// {"fullName":"zzz ran"}

这里我们可以看到,它只打印 toJSON 函数的结果,而不是打印整个对象。

三、 JSON.parse()

JSON.parse()的用法了,就是将字符串转为json格式。

JSON.stringify() 的使用、toJSON 方法 以及 JSON.parse 方法相关推荐

  1. JSON.stringify转换Date不正确的解決方法

    JSON.stringify转换Date不正确的原因:国际时区(UTC)和中国时区(GMT)的原因,东八区+8等于国际时区. 解决方法,重新Es5的Date.prototype.toJSON方法,代码 ...

  2. JSON Stringify示例–如何使用JS解析JSON对象

    There are so many programming languages, and every language has its own features. But all of them ha ...

  3. 带你一起实现 JSON.Stringify 方法

      JSON.Stringify方法能够站在全局考察对 JS 各种数据类型理解的深度,对各种极端的边界情况处理能力,以及JS的编码能力.之所以将这篇作为这一模块的进阶,是因为想把整个数据类型的知识点串 ...

  4. 第六讲:JSON.stringify 方法

    我在上一讲为你剖析了闭包这个难点,带你了解了作用域.闭包产生的原因及表现形式.那么这一讲,我们一起来手工实现一个JSON.stringify 的方法. 这个方法能够站在全局考察你对 JS 各种数据类型 ...

  5. JSON的两种方法JSON.parse()、JSON.stringify()

    1.JSON.parse() 方法 // JSON是一种数据格式,本质上是字符串// 就是将对象或数组用单引号包裹起来,对象中的属性名使用双引号包裹// JSON.parse() 方法,可将json格 ...

  6. JS中的JSON.Stringify 方法详解

    在大厂的前端面试过程中,JSON.Stringify常常被问到,那么能够熟练的运用,掌握就必不可少. 那么,到底什么是 JSON.stringify 方法? 方法基本介绍 JSON.stringify ...

  7. JSON.stringify()

    写在前边 不言而喻,JSON.stringify() 是用来将合法的JSON数据字符串化的!然而在正常的工作中我们用到的只是最基础的功能:今天我们就探索不一样的JSON.stringify(). 基础 ...

  8. json.stringify()详解

    JSON.stringify() 方法将一个 JavaScript 对象或值转换为 JSON 字符串,如果指定了一个 replacer 函数,则可以选择性地替换值,或者指定的 replacer 是数组 ...

  9. JSON.parse和JSON.stringify

    前言 JSON(JavaScript Object Notation)是一种语法,可用来序列化对象.数组.数值.字符串.布尔值和 null .它基于 JavaScript 语法,但与之不同:JavaS ...

  10. JSON.stringify() 详解

    该函数的作用是:系列化对象  系列化对象说白了就是把对象的类型转换为字符串类型 语法 JSON.stringify(value[, replacer [, space]]) value  将要序列化成 ...

最新文章

  1. 使用 Matplotlib 这么久,竟不知道数据可以动起来
  2. python中语法错误-python冒号语法错误python中如何创建字典
  3. 引入Vant-UI全部组件的代码 - (备份)
  4. 数据分析 | 这个新职业年薪高达49w,作为普通打工人的你眼馋了吗?
  5. Spring classPath:用法
  6. 美国计算机专业研究生学制几年,美国硕士学制:美国硕士读几年毕业
  7. 骨传导耳机听歌音质怎么样、公认音质好的骨传导耳机排名
  8. jsp牛刀小试之在线报名系统
  9. 父亲的暧昧行迹该告诉母亲吗?
  10. 让古天乐心动的这位女星,鼻子塌却美得风华绝代
  11. Python编程 | 系统编程 | 脚本运行上下文 | 标准流
  12. 新版V10MXone Pro自适应苹果CMS影视模板/亲测
  13. 股票量化分析工具QTYX使用攻略——高速版本地行情源(更新v2.5.4)
  14. 2018年“京东好店”排行榜发布 这100家店凭什么上榜
  15. Opencv-培训(一)
  16. android清理缓存实现,android之清理缓存实现
  17. (1)复杂度分析原理与方法
  18. LinearLayout下如何实现两端对齐
  19. 机器学习 第三讲 机器学习基础、机器学习算法(K-近邻算法、朴素贝叶斯算法)
  20. C++知识点 —— 整合(持续更新中)

热门文章

  1. 在这里!修练成一个值得托付的人,焦虑会顿减......
  2. EXCEL散点图改横轴坐标
  3. 无线通信中信号的多径效应
  4. Android:设置头像
  5. 夺命雷公狗---Smarty NO:03 设计篇1
  6. 博客园右下角添加看板娘
  7. 从0开始创建vue工程化项目~
  8. WIN10网络重置命令
  9. Vue 实现仿美团外卖APP的总结
  10. 美国队长--清晰TC中字 迅雷下载+ 美国队长 漫画 复仇者迅雷下载