您好,登錄后才能下訂單哦!
今天就跟大家聊聊有關如何使用JavaScript中的json.stringify,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。
編碼是將數據轉換成另一種形式的方法。在JSON的情況下,JSON被描述為JavaScript的對象,但其內容的數據格式只是一個字符串。實際上,讀取json文件只是一個字符串,所以它不能像對象一樣處理。編碼將允許您將其用作JavaScript的對象。我們下面來具體看一下如何使用JavaScript編碼json。
編碼我們使用JSON.parse。
var json_s = '{"ID": 1,"name": "user01","gender": "women"}' console.log(typeof(json_s)) var json_o = JSON.parse(json_s) console.log(typeof(json_o)) console.log(json_o.ID)
json_s定義了json,json只是一個字符串通過JSON.parse將其編碼為對象。
看完了編碼,我們來看如何解碼
解碼是將編碼版本返回其原始形式。
我們使用JSON.stringify函數返回字符串。
我們來看看代碼
var json = '{"ID": 1,"name": "user01","gender": "women"}' console.log(typeof(json)) var encoded_json = JSON.parse(json) console.log(typeof(encoded_json)) var decoded_json = JSON.stringify(encoded_json) console.log(typeof(decoded_json))
運行結果如下
可以看到解碼正確完成。
看完了上面的內容,下面我們就來進入正題,什么是json.stringify?如何使用?
json stringify 是一個解碼JSON的函數。
讓我們在使用json stringify進行解碼的同時對其進行格式化
JSON.stringify()可以帶三個參數。
第一個是編碼值,即一個對象,如示例中所述。
第二個可以稱為replacer并指定回調。
在這里并不會詳細的解釋,所以我將在代碼中加入null。
第三個用于指定格式化此參數的縮進。
我們來看具體的代碼
var json_obj = {"ID": 1,"name": "user01","gender": "women"} var decoded_json = JSON.stringify(json_obj, null, " ") console.log(decoded_json)
運行結果如下:會根據放入的空格縮進
放入空格多點,會看的清楚點,代碼如下
var json_obj = {"ID": 1,"name": "user01","gender": "women"} var decoded_json = JSON.stringify(json_obj, null, " ") console.log(decoded_json)
結果如下
此外,雖然可以在其中添加空格,但很難看出明確指定了多少個縮進,所以也可以直接指定數值來進行縮進
var json_obj = {"ID": 1,"name": "user01","gender": "women"} var decoded_json = JSON.stringify(json_obj, null, 2) console.log(decoded_json)
結果如下
下面我們來看用json.stringify解碼一個數組
代碼如下
var arr = ["a","b","c"]; var decoded_json = JSON.stringify(arr) console.log(decoded_json) console.log(typeof(decoded_json))
運行結果如下:正確解碼
對象中是否包含數組無關緊要
代碼如下
var arr = {"test": ["a","b","c"]}; var decoded_json = JSON.stringify(arr) console.log(decoded_json) console.log(typeof(decoded_json))
運行結果如下
看完上述內容,你們對如何使用JavaScript中的json.stringify有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。