国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

node.js|vue.js|jquery|angularjs|React|json|js教程|

服務器之家 - 編程語言 - JavaScript - 淺談JSON中stringify 函數、toJosn函數和parse函數

淺談JSON中stringify 函數、toJosn函數和parse函數

2021-07-25 18:29JS教程網 JavaScript

這篇文章主要介紹了淺談JSON中stringify 函數、toJosn函數和parse函數,需要的朋友可以參考下

JSON.stringify 函數 (JavaScript)

語法:JSON.stringify(value [, replacer] [, space])

將 JavaScript 值轉換為 JavaScript 對象表示法 (Json) 字符串。

 

復制代碼 代碼如下:

value
必需。 要轉換的 JavaScript 值(通常為對象或數組)。
replacer
可選。 用于轉換結果的函數或數組。
如果 replacer 為函數,則 JSON.stringify 將調用該函數,并傳入每個成員的鍵和值。 使用返回值而不是原始值。 如果此函數返回 undefined,則排除成員。 根對象的鍵是一個空字符串:""。
如果 replacer 是一個數組,則僅轉換該數組中具有鍵值的成員。 成員的轉換順序與鍵在數組中的順序一樣。 當 value 參數也為數組時,將忽略 replacer 數組。
space
可選。 向返回值 JSON 文本添加縮進、空格和換行符以使其更易于讀取。
如果省略 space,則將生成返回值文本,而沒有任何額外空格。
如果 space 是一個數字,則返回值文本在每個級別縮進指定數目的空格。 如果 space 大于 10,則文本縮進 10 個空格。
如果 space 是一個非空字符串(例如“\t”),則返回值文本在每個級別中縮進字符串中的字符。
如果 space 是長度大于 10 個字符的字符串,則使用前 10 個字符。

 

如果 value 具有 toJSON 方法,則 JSON.stringify 函數將使用該方法的返回值。 如果 toJSON 方法的返回值為 undefined,則不轉換成員。 這使對象能夠確定自己的 JSON 表示形式。

將不會轉換不具有 JSON 表示形式的值,例如 undefined。 在對象中,將丟棄這些值。 在數組中,會將這些值替換為 null。

執行順序

在序列化過程中,如果 value 參數對應有 toJSON 方法,則 JSON.stringify 將首先調用 toJSON 方法。 如果該方法不存在,則使用原始值。 接下來,如果提供 replacer 參數,則該值(原始值或 toJSON 返回值)將替換為 replacer 參數的返回值。 最后,根據可選 space 參數向該值添加空格以生成最終的 JSON 文本。

此示例使用 JSON.stringify 將 contact 對象轉換為 JSON 文本。 定義 memberfilter 數組以便只轉換surname 和 phone 成員。 省略 firstname 成員。

 

復制代碼 代碼如下:

var contact = new Object();
contact.firstname = "Jesper";
contact.surname = "Aaberg";
contact.phone = ["555-0100", "555-0120"];
var memberfilter = new Array();
memberfilter[0] = "surname";
memberfilter[1] = "phone";
var jsonText = JSON.stringify(contact, memberfilter, "\t");
document.write(jsonText);
// Output:
// { "surname": "Aaberg", "phone": [ "555-0100", "555-0120" ] }

 

toJSON 方法 (Date) (JavaScript)

語法:objectname.toJSON()

objectname

必需。 需要進行 JSON 序列化的對象。

toJSON 方法是 Date JavaScript 對象的內置成員。 它返回 UTC 時區的 ISO 格式日期字符串(由后綴 Z 表示)。

以下示例使用 toJSON 方法將大寫的字符串成員值序列化。 在調用 JSON.stringify 時調用 toJSON 方法。

 

復制代碼 代碼如下:

JavaScript
var contact = new Object();
contact.firstname = "Jesper";
contact.surname = "Aaberg";
contact.phone = ["555-0100", "555-0120"];
contact.toJSON = function(key)
 {
    var replacement = new Object();
    for (var val in this)
    {
        if (typeof (this[val]) === 'string')
            replacement[val] = this[val].toUpperCase();
        else
            replacement[val] = this[val]
    }
    return replacement;
};
var jsonText = JSON.stringify(contact);
/* The value of jsonText is:
'{"firstname":"JESPER","surname":"AABERG","phone":["555-0100","555-0120"]}'
*/

 

JSON.parse 函數 (JavaScript)

將 JavaScript 對象表示法 (JSON) 字符串轉換為對象

語法:JSON.parse(text [, reviver])

 

復制代碼 代碼如下:

text
必需。 一個有效的 JSON 字符串。
reviver
可選。 一個轉換結果的函數。 將為對象的每個成員調用此函數。 如果成員包含嵌套對象,則先于父對象轉換嵌套對象。 對于每個成員,會發生以下情況:
如果 reviver 返回一個有效值,則成員值將替換為轉換后的值。
如果 reviver 返回它接收的相同值,則不修改成員值。
如果 reviver 返回 null 或 undefined,則刪除成員。

 

以下示例使用 JSON.parse 將 JSON 字符串轉換成對象。

 

復制代碼 代碼如下:

var jsontext = '{"firstname":"Jesper","surname":"Aaberg","phone":["555-0100","555-0120"]}';
var contact = JSON.parse(jsontext);
document.write(contact.surname + ", " + contact.firstname);
// Output: Aaberg, Jesper

 

以下示例演示了如何使用 JSON.stringify 將數組轉換成 JSON 字符串,然后使用 JSON.parse 將該字符串重新轉換成數組。

 

復制代碼 代碼如下:

var arr = ["a", "b", "c"];
var str = JSON.stringify(arr);
document.write(str);
document.write ("<br/>");
var newArr = JSON.parse(str);
while (newArr.length > 0) {
    document.write(newArr.pop() + "<br/>");
}
// Output:
// ["a","b","c"]
// c
// b
// a

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 亚洲成人av在线 | 亚洲淫视频 | 91免费版在线观看 | 亚洲视频在线观看免费 | 免费观看爱爱视频 | 国产 欧美 日韩 一区 | 国产三级在线观看 | 高清国产一区 | 国产黄色一级大片 | 日日久 | 亚洲成人一区二区三区 | 精品国产一区二区三区久久久 | 日韩欧美自拍 | 手机亚洲第一页 | 一区中文字幕 | 三级在线观看 | 亚洲欧美在线观看视频 | 天堂成人av | 欧美美女爱爱 | 福利视频1000| 国产精品一码二码三码在线 | 欧美成人高清视频 | 久久中文字幕一区二区 | 黄色电影天堂 | 欧美区在线 | 亚洲精品国产电影 | 欧美亚洲免费 | 日本中文字幕一区二区 | www.av在线| 精品久久精品 | 欧美国产一区二区三区 | 中文字幕66页 | 欧美2区| 国产精品视频入口 | 亚洲综合网站 | 国产精品久久久久久久久久久久久 | 天堂99x99es久久精品免费 | 91精品国产综合久久久久 | 日本aⅴ毛片成人实战推荐 伊人久久在线 | 91久久综合亚洲鲁鲁五月天 | 黄桃av|