最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

淺談JSON中stringify 函數(shù)、toJosn函數(shù)和parse函數(shù)

 更新時(shí)間:2015年01月26日 16:37:37   投稿:hebedich  
這篇文章主要介紹了淺談JSON中stringify 函數(shù)、toJosn函數(shù)和parse函數(shù),需要的朋友可以參考下

JSON.stringify 函數(shù) (JavaScript)

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

將 JavaScript 值轉(zhuǎn)換為 JavaScript 對(duì)象表示法 (Json) 字符串。

復(fù)制代碼 代碼如下:

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

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

將不會(huì)轉(zhuǎn)換不具有 JSON 表示形式的值,例如 undefined。 在對(duì)象中,將丟棄這些值。 在數(shù)組中,會(huì)將這些值替換為 null。

執(zhí)行順序

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

此示例使用 JSON.stringify 將 contact 對(duì)象轉(zhuǎn)換為 JSON 文本。 定義 memberfilter 數(shù)組以便只轉(zhuǎn)換surname 和 phone 成員。 省略 firstname 成員。

復(fù)制代碼 代碼如下:

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)

語(yǔ)法:objectname.toJSON()

objectname

必需。 需要進(jìn)行 JSON 序列化的對(duì)象。

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

以下示例使用 toJSON 方法將大寫(xiě)的字符串成員值序列化。 在調(diào)用 JSON.stringify 時(shí)調(diào)用 toJSON 方法。

復(fù)制代碼 代碼如下:

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 函數(shù) (JavaScript)

將 JavaScript 對(duì)象表示法 (JSON) 字符串轉(zhuǎn)換為對(duì)象

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

復(fù)制代碼 代碼如下:

text
必需。 一個(gè)有效的 JSON 字符串。
reviver
可選。 一個(gè)轉(zhuǎn)換結(jié)果的函數(shù)。 將為對(duì)象的每個(gè)成員調(diào)用此函數(shù)。 如果成員包含嵌套對(duì)象,則先于父對(duì)象轉(zhuǎn)換嵌套對(duì)象。 對(duì)于每個(gè)成員,會(huì)發(fā)生以下情況:
如果 reviver 返回一個(gè)有效值,則成員值將替換為轉(zhuǎn)換后的值。
如果 reviver 返回它接收的相同值,則不修改成員值。
如果 reviver 返回 null 或 undefined,則刪除成員。

以下示例使用 JSON.parse 將 JSON 字符串轉(zhuǎn)換成對(duì)象。

復(fù)制代碼 代碼如下:

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 將數(shù)組轉(zhuǎn)換成 JSON 字符串,然后使用 JSON.parse 將該字符串重新轉(zhuǎn)換成數(shù)組。

復(fù)制代碼 代碼如下:

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

相關(guān)文章

  • JS操作JSON常用方法(10w閱讀)

    JS操作JSON常用方法(10w閱讀)

    工作中做了幾款自動(dòng)化測(cè)試工具都是跟日志讀取相關(guān),日志格式又大多數(shù)都是JSON,所以這里把常用的JS操作JSON的方法做了總結(jié),需要的朋友可以參考下
    2020-12-12
  • 將List對(duì)象列表轉(zhuǎn)換成JSON格式的類(lèi)實(shí)現(xiàn)方法

    將List對(duì)象列表轉(zhuǎn)換成JSON格式的類(lèi)實(shí)現(xiàn)方法

    下面小編就為大家?guī)?lái)一篇將List對(duì)象列表轉(zhuǎn)換成JSON格式的類(lèi)實(shí)現(xiàn)方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2016-07-07
  • javascript表單域與json數(shù)據(jù)間的交互

    javascript表單域與json數(shù)據(jù)間的交互

    找了幾個(gè)javascript的框架,都沒(méi)有找到我想要的: 提供函數(shù),把某個(gè)表單的所有域封裝成json數(shù)據(jù)格式的對(duì)象,唯有自己實(shí)現(xiàn)一個(gè)。
    2008-10-10
  • 快速解決處理后臺(tái)返回json數(shù)據(jù)格式的問(wèn)題

    快速解決處理后臺(tái)返回json數(shù)據(jù)格式的問(wèn)題

    今天小編就為大家分享一篇快速解決處理后臺(tái)返回json數(shù)據(jù)格式的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-08-08
  • 一篇了解JSON與數(shù)據(jù)存儲(chǔ)基礎(chǔ)知識(shí)

    一篇了解JSON與數(shù)據(jù)存儲(chǔ)基礎(chǔ)知識(shí)

    這篇文章主要介紹了JSON與數(shù)據(jù)存儲(chǔ)基礎(chǔ)知識(shí),本篇文章較為基礎(chǔ),但非常詳細(xì),可以很好的理解JSON和數(shù)據(jù)存儲(chǔ),,需要的朋友可以參考下
    2023-01-01
  • 解決json日期格式問(wèn)題的3種方法

    解決json日期格式問(wèn)題的3種方法

    這篇文章主要介紹了解決json日期格式問(wèn)題的3種方法 ,需要的朋友可以參考下
    2014-02-02
  • json 介紹 js簡(jiǎn)單實(shí)例

    json 介紹 js簡(jiǎn)單實(shí)例

    json全稱(chēng)是JavaScript Object Notation(javaScript對(duì)象符號(hào))。JSON是一種結(jié)構(gòu)化的,輕量級(jí)的,完全獨(dú)立于語(yǔ)言的.基于文本的數(shù)據(jù)傳輸格式,在許多場(chǎng)合下用來(lái)替代xml文件格式。
    2009-12-12
  • 告訴大家什么是JSON

    告訴大家什么是JSON

    JSON(JavaScript Object Notation) 是一種輕量級(jí)的數(shù)據(jù)交換格式。易于人閱讀和編寫(xiě)。同時(shí)也易于機(jī)器解析和生成。
    2008-06-06
  • JQuery用$.ajax或$.getJSON跨域獲取JSON數(shù)據(jù)的實(shí)現(xiàn)代碼

    JQuery用$.ajax或$.getJSON跨域獲取JSON數(shù)據(jù)的實(shí)現(xiàn)代碼

    這篇文章主要介紹了JQuery用$.ajax或$.getJSON跨域獲取JSON數(shù)據(jù)的實(shí)現(xiàn)代碼,需要的朋友可以參考下
    2017-09-09
  • JSON.stringify 語(yǔ)法實(shí)例講解

    JSON.stringify 語(yǔ)法實(shí)例講解

    可能有些人對(duì)系列化這個(gè)詞過(guò)敏,我的理解很簡(jiǎn)單。就是說(shuō)把原來(lái)是對(duì)象的類(lèi)型轉(zhuǎn)換成字符串類(lèi)型(或者更確切的說(shuō)是json類(lèi)型的)。就這么簡(jiǎn)單。打個(gè)比方說(shuō),你有一個(gè)類(lèi),那么你可以通過(guò)這個(gè)方法轉(zhuǎn)換成相應(yīng)的json類(lèi)型的
    2012-03-03

最新評(píng)論

邛崃市| 紫云| 且末县| 西贡区| 萍乡市| 江孜县| 调兵山市| 桂平市| 崇礼县| 定襄县| 太仓市| 连江县| 盐边县| 工布江达县| 互助| 建昌县| 徐州市| 临江市| 突泉县| 常州市| 民和| 秦安县| 揭西县| 武汉市| 全南县| 肥城市| 沈丘县| 巴林右旗| 运城市| 云南省| 垫江县| 常德市| 巴彦县| 天峻县| 白水县| 边坝县| 上栗县| 渭南市| 哈密市| 泰和县| 广南县|