JSON.Stringify parse 序列化数据的坑
程序开发
2023-09-09 11:49:06
使用 JSON.stringify
再JSON.parse
数据,前后变化表明,使用JSON.stringify
序列化之后的数据,在JSON.parse
会丢失部分数据。
使用JSON.Stringify
转换的数据中,如果包含 function
,undefined
,Symbol
,这几种类型,不可JSON.Stringify序列化后,这个键值对会消失。
转换的数据中包含 NaN
,Infinity
值(含-Infinity
),n:NaH,Inf:Infinity
JSON
序列化后的结果会是null。n:null,Inf:
null
转换的数据中包含Date
对象,JSON.Stringify
序列化之后,会变成字符串。
转换前
转换后
转换的数据包含RegExp
引用类型序列化之后会变成空对象。
转换前
转换后
判断是否可枚举
Object.propertyIsEnumerable()方法
propertyIsEnumerable( ) 方法返回一个布尔值,表示属性是否可以枚举
//例如 var obj = {a:1}
obj.propertyIsEnumerable(‘a’) //true
简单来说,用户定义的属性都是可枚举的,而内置对象不可枚举。
一种情况除外:当属性的原型是继承于其它对象原型时,这时用户定义的属性就是不可枚举的
作者:haoxn
链接:https://www.jianshu.com/p/e6ca4e85af5c
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
标签:
上一篇:
React组件复用
下一篇:
相关文章
-
无相关信息