JSON stringify 跳过超过 3 个级别的嵌套对象

问题描述

我想将对象存储在本地存储中,并使用 JSON.stringify 序列化了对象。然后使用 JSON.parse 解析后缺少一些内部属性。

我在下面附上了 2 张图片以查看更改,如果有人可以为此提供更好的解决方案,我们将不胜感激。谢谢。

这个对象就在使用 JSON 字符串化之前

enter image description here

这个对象被字符串化并使用 JSON 解析

enter image description here

这就是我存储和检索数据的方式

enter image description here

enter image description here

解决方法

Json.Stringify 不会将函数传递到字符串化的 JSON 中,即函数不会被复制到字符串中,因为函数不是有效的 JSON 对象。在您的情况下,难度是一个函数,因此不会被复制。

您可以使用替换器来包含该函数:

JSON.stringify({
   /* your object here */
},function(key,val) {
        return (typeof val === 'function') ? '' + val : val;
});

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...