是一个用于序列化对象的方法

接受三个参数:json.stringify(value,replacer,space)

第一个参数:value表示要被序列化的对象(接受对象或数组类型)

第二个参数:replacer表示对象中要序列化的属性(接受数组和函数类型)

第三个参数:space用于描述序列化后的缩进字符数,用于美化格式

面试(应用场景):

场景一:localStorage存储

loaclStorage只能存储字符串的存储类型 是键值对的格式

例:const obj={a:'1',b:'2'}

localStorage.setItem('key',obj)

localStorage.getItem('key') //'[object Object]' 存储失败

解决:使用localStorage.stringify()

localStorage.setItem('key',JSON.stringify(obj))

localStorage.getItem('key')  //'{"a":"1","b":"2"}'存储成功

JSON.parse(localStorage.getItem('key'))  //{a:'1',b:'2'}再利用JSON.parse()提取出来

场景二:对象的深拷贝

例:let arr={a:'1',b:'2'}

let arr2=arr

arr2.a='111'

console.log(arr.a)//'111'

解决:利用JSON.stringify和JSON.parse给对象做深拷贝

let arr3=JSON.stringify(JSON.parse(arr))

arr3.b='2222'

console.log(arr.b)//'2'

场景三:删除对象属性

方法1:delete方法删除

let obj={a:'1',b:'2'}

delete obj.a

log(obj)//{b:'2'}

方法2:利用JSON.stringify()的第二个参数进行删除

let obj = { a: "1", b: "2" };

let obj1 = JSON.parse(

JSON.stringify(obj, (key, value) => {

if (key === "b") {

return undefined;

} else {

return value;

}

})

);

console.log(obj1);  //{a:'1'}

或:

let obj = { a: "1", b: "2" };

let obj1 = JSON.parse(

JSON.stringify(obj,['b'])

);

console.log(obj1);  //{a:'1'}

JSON.stringify的作用相关推荐

  1. JSON.parse()、JSON.stringify()和eval()的作用

    浅谈JSON.parse().JSON.stringify()和eval()的作用 相信大家对于JSON应该不陌生,度娘对这个名词的解释大致如下: "JSON(JavaScript Obje ...

  2. 【js】JSON.stringify 语法实例讲解

    语法:  JSON.stringify(value [, replacer] [, space]) value:是必选字段.就是你输入的对象,比如数组,类等. replacer:这个是可选的.它又分为 ...

  3. json.stringify()与json.parse()的区别,json.stringify()的妙用

    一.JSON.stringify()与JSON.parse()的区别 最近做项目,发现JSON.stringify()使用场景真的挺多,我们都知道JSON.stringify()的作用是将 JavaS ...

  4. php json.parse,JSON.parse()与JSON.stringify()和eval()使用方法详解

    这次给大家带来JSON.parse()与JSON.stringify()和eval()使用方法详解,JSON.parse()与JSON.stringify()和eval()使用的注意事项有哪些,下面就 ...

  5. JSON.stringify 语法实例讲解

    作用:这个函数的作用主要是为了序列化对象的. 可能有些人对序列化这个词过敏,我的理解很简单.就是说把原来是对象的类型转换成字符串类型(或者更确切的说是json类型的).就这么简单.打个比方说,你有一个 ...

  6. 原生js实现JSON.parse()和JSON.stringify()

    - 首先JSON.stringify()是将js对象转换为JSON形式 实现思路: 通过递归调用,来实现对转换对象Object的深层value进行遍历,利用array的join实现最终字符串拼接 fu ...

  7. 前端:JSON.stringify() 的 5 个秘密特性

    JSON.stringify() 方法能将一个 JavaScript 对象或值转换成一个 JSON 字符串. 作为一名 JavaScript 开发人员,JSON.stringify() 是用于调试的最 ...

  8. JSON.parse和JSON.stringify

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

  9. JSON.stringify() 详解

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

最新文章

  1. 深js, jsconf China 回顾
  2. Observer模式在J2EE中的实现
  3. mysql:Column id cannot be null
  4. undefined reference to 问题解决方法
  5. java 短链跳转原理_给你代码:短链接生成原理
  6. android graphics pipeline
  7. 上海高考女生计算机专业,@2020高考:女生最多的15个专业,一辈子的好友就在这里...
  8. 服务器说你注册过多,为什么我的世界服务器说此用户名已被注册我都换了很多用户了都没用 爱问知识人...
  9. python字符串补空格输出_python实现指定字符串补全空格、前面填充0的方法
  10. 石头扫地机器人音量怎么调_石头的新扫地机器人 T6,内外都有升级
  11. 修改R语言安装包的默认路径 r包安装位置
  12. vb6引用vbRichClient5 下载对象 cDownloads 简单示例
  13. 怎么计算中国股市分红最高的股票?什么是股息率?--使用python和tushare获取分红最高的股票
  14. Excel实用技巧-如何批量提取excel工作表名称
  15. 求最大公约数的4种算法(C++)
  16. CS294-112 深度强化学习 秋季学期(伯克利)NO.9 Learning policies by imitating optimal controllers...
  17. 家里宽带都200M了,为什么网速这么慢?简单设置一下
  18. BTA分论坛现场直击|区块链与投资,不是“钱”那么简单!
  19. 纪念左耳朵耗子(陈皓)
  20. html5在手机端调用摄像头的介绍以及新特性

热门文章

  1. 比尔盖茨:要想富,先养鸡
  2. 李宏毅对抗生成网络 (GAN)教程(2) Conditional Generation by GAN
  3. c语言递归法解释,给我解释一下C语言递归函数?
  4. objective-c 内存管理资料
  5. bowtie结果sam文件解读
  6. 图神经网络GNN GCN AlphaFold2 虚拟药物筛选和新药设计
  7. 3Dconnexion SpaceMouse Compact 有线3D鼠标
  8. 解决 win10 Microsoft store 应用商店打不开,错误代码0x80072EFD
  9. 慢慢了解慢慢深入熟练掌握
  10. Qt开发MQTT(一) 之Qt官方Qt MQTT