json.parse(json.stringify)的弊端

json.parse(json.stringify)的弊端使用JS0N.parse(JS0W.stringify())进行深拷贝对象时,存在一些弊端:

1.无法拷贝值为 umdefined的属性:在序列化(stringiy)阶段,如果对象中某个属性的值为 umdefined,那么这个属性会被忽略,不会出现在生成的 JSON 字符串中。因此在反序列化(parse)阶段,这个属性就不会被还原。

2.无法拷贝函数:在序列化阶段,如果对象中包含函数,这些函数会被忽略,不会出现在生成的 JSON 字符串中。因此在反序列化阶段,这个函数不会被还原。3.NaN、无穷大、无穷小被转为 nu11:在序列化阶段,特殊值如 NaN、无穷大、无穷小会被转换为 nul1。在反序列化阶段,这些值会被还原为原始的特殊值。无法获取原型上的方法、属性:这个方法只能获取到 Obiect 原型的内容,无法获取到实例原型上的方法或属性。这意味着如果对象是从某个构造函数实例化出来的,并且该构造函数在原型上定义了方法或属性,这些方法或属性不会被TS0N.parse(TSON.stringify())正确拷贝。

。Date 对象转变为 Date 字符串:在序列化阶段,Date 对象会被转换为 IS0 格式的日期字符串。在反序列化阶段,这个日期字符串会被转换回 Date 对象,但任何时区或童秒级别的信息可能会丢失。

总结来说,JS0N.parse(JS0N.stringify())无法正确拷贝值为 undefined 的属性、函数特殊值(NaN、无穷大、无穷小),以及无法拷贝原型上的方法、属性。此外,Date 对象在拷贝过程中可能会丢失一些信息。

相关推荐
Moment4 分钟前
跨端项目被改需求逼疯?FinClip 可能是非常不错的一次选择
前端·javascript
这里有鱼汤7 分钟前
无需HTML/CSS!用Python零基础打造专业级数据应用——Streamlit入门指南
前端·后端·python
Gazer_S11 分钟前
【行业树选择器组件:基于Vue3与Element Plus的高性能树形选择组件优化与重构】
前端·javascript·重构
白羊@25 分钟前
鸿蒙案例---生肖抽卡
前端·javascript·华为·harmonyos
橙某人31 分钟前
🍊🍊🍊在网格中进行拖动布局-Javascript、Vue
前端·javascript·vue.js
若川33 分钟前
Taro 4 已发布:11. Taro 是如何解析入口配置 app.config.ts 和页面配置的?
前端·javascript·微信小程序
八了个戒37 分钟前
「数据可视化 D3系列」入门第一章:Hello D3.js
开发语言·前端·javascript·数据可视化·canvas
·薯条大王39 分钟前
Node.js 操作 MySQL 数据库
javascript·数据库·mysql
二川bro1 小时前
深度解析 Vue 项目 Webpack 分包与合包 一文读懂
前端·vue.js·webpack
getapi1 小时前
flutter底部导航代码解释
前端·javascript·flutter