日本一卡精品视频免费丨国产午夜片无码区在线播放丨国产精品成人久久久久久久丨国产亚洲日韩av在线播放不卡丨亚洲日韩av无码

你不知道的JSON.stringify()九大特性

2020/11/2 13:49:28   閱讀:2838    發(fā)布者:2838


JSON.stringify() 第一大特性總結(jié)


undefined、任意的函數(shù)以及 symbol 作為對象屬性值時 JSON.stringify() 對跳過(忽略)它們進行序列化undefined、任意的函數(shù)以及 symbol 作為數(shù)組元素值時,JSON.stringify() 將會將它們序列化為 null
undefined、任意的函數(shù)以及 symbol 被 JSON.stringify() 作為單獨的值進行序列化時,都會返回 undefined


JSON.stringify() 第二大特性


非數(shù)組對象的屬性不能保證以特定的順序出現(xiàn)在序列化后的字符串中。

正如我們在第一特性所說,JSON.stringify() 序列化時會忽略一些特殊的值,所以不能保證序列化后的字符串還是以特定的順序出現(xiàn)(數(shù)組除外)。

JSON.stringify() 第三大特性


轉(zhuǎn)換值如果有 toJSON() 函數(shù),該函數(shù)返回什么值,序列化結(jié)果就是什么值,并且忽略其他屬性的值。
JSON.stringify()第四大特性
JSON.stringify() 將會正常序列化 Date 的值。
實際上 Date 對象自己部署了 toJSON() 方法(同Date.toISOString()),因此 Date 對象會被當(dāng)做字符串處理。

JSON.stringify() 第五大特性


NaN 和 Infinity 格式的數(shù)值及 null 都會被當(dāng)做 null。


JSON.stringify() 第六大特性


布爾值、數(shù)字、字符串的包裝對象在序列化過程中會自動轉(zhuǎn)換成對應(yīng)的原始值。


JSON.stringify() 第七大特性


其他類型的對象,包括 Map/Set/WeakMap/WeakSet,僅會序列化可枚舉的屬性。JSON.stringify() 不可枚舉的屬性默認會被忽略

JSON.stringify() 第八大特性


我們都知道實現(xiàn)深拷貝最簡單粗暴的方式就是序列化:JSON.parse(JSON.stringify()),這個方式實現(xiàn)深拷貝會因為序列化的諸多特性從而導(dǎo)致諸多的坑點:比如現(xiàn)在我們要說的循環(huán)引用問題。

對包含循環(huán)引用的對象(對象之間相互引用,形成無限循環(huán))執(zhí)行此方法,會拋出錯誤。這也就是為什么用序列化去實現(xiàn)深拷貝時,遇到循環(huán)引用的對象會拋出錯誤的原因。


JSON.stringify() 第九大特性


所有以 symbol 為屬性鍵的屬性都會被完全忽略掉,即便 replacer 參數(shù)中強制指定包含了它們, replacer 是 JSON.stringify() 的第二個參數(shù)
主站蜘蛛池模板: 国产精品毛片无遮挡高清| 日韩午夜福利无码专区a| 欧美做爰一区二区三区| 夜夜高潮夜夜爽精品视频| 免费观看色| 日日摸日日碰夜夜爽av| 中国少妇内射xxxhd免费| 亚洲免费一级片| 9色视频在线观看| 无码av免费毛片一区二区| 成人精品啪啪欧美成| 东方欧美色图| 国产精品久久福利网站| 99国产在线拍91揄自揄视| 亚洲影视一区| 狠狠躁夜夜躁人人爽天天| 男女性动态激烈动全过程| 亚洲一区二区天堂| 久久国产热精品波多野结衣av| 东京天堂网天堂网| 亚洲成在人线aⅴ免费毛片| 窝窝影院午夜看片| 黄视频国产| 久久精品女人天堂av免费观看| 亚洲 欧美 激情 小说 另类| 1688成人免费视频观看| a在线亚洲男人的天堂| 成人欧美一区二区三区在线播放 | 日韩视频无码中字免费观| 亚洲国产精品无码观看久久| 日韩精品一卡2卡三卡4卡| 人人添人人澡人人澡人人人人| 蜜桃视频成人在线观看| 国产精品久久久久久亚洲| 免费极品av一视觉盛宴| 欧美视频二区| 一本大道卡一卡二卡三乱码全集资源| 无码熟妇人妻av影片在线|