你所不知道的JSON.parse() 和 JSON.stringify() – 高級用法

你所不知道的JSON.parse() 和 JSON.stringify() – 高級用法

space :該參數可以是一個 String 或 Number 對象,作用是為了在輸出的JSON字符串中插入空白符來增強可讀性. 如果是Number對象, 則表示用多少個空格來作為空白符; 最大可為10,大於10的數值也取10.最小可為1,小於1的數值無效,則不會顯示空白符. 如果是個 String對象, 則該字符串本身會作為空白符,字符串最長可為10個字符.超過的話會截取前十個字符. 如果該參數被省略 (或者為null), 則不會顯示空白符

替換函數可以用來過濾值,因為任何返回 undefined 的值將不在返回的字符串中:、

你所不知道的JSON.parse() 和 JSON.stringify() – 高級用法

你所不知道的JSON.parse() 和 JSON.stringify() – 高級用法

toJSON方法

如果一個被序列化的對象擁有 toJSON 方法,那麼該 toJSON 方法就會覆蓋該對象默認的序列化行為:不是那個對象被序列化,而是調用 toJSON 方法後的返回值會被序列化

你所不知道的JSON.parse() 和 JSON.stringify() – 高級用法

用 JSON.stringify 來格式化對象

在實際使用中,我們可能會格式化一些複雜的對象,這些對象往往對象內嵌套對象。直接看起來並不那麼直觀,結合上面的的 replacer 和 space 參數,我們可以這樣格式化複雜對象:

你所不知道的JSON.parse() 和 JSON.stringify() – 高級用法

實際返回的字符串,記住是字符串,如下:

你所不知道的JSON.parse() 和 JSON.stringify() – 高級用法


分享到:


相關文章: