欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

JSON的parse()方法介紹

 更新時(shí)間:2019年01月31日 10:39:20   作者:mumu1998  
今天小編就為大家分享一篇關(guān)于JSON的parse()方法介紹,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧

parse()方法的介紹:

在接收服務(wù)器數(shù)據(jù)時(shí)一般是字符串。

我們可以使用 JSON.parse() 方法將數(shù)據(jù)轉(zhuǎn)換為 JavaScript 對(duì)象。

語法

JSON.parse(text[, reviver])

參數(shù)說明:

  • text:必需, 一個(gè)有效的 JSON 字符串。
  • reviver: 可選,一個(gè)轉(zhuǎn)換結(jié)果的函數(shù), 將為對(duì)象的每個(gè)成員調(diào)用此函數(shù)。

下面我們來看一個(gè)實(shí)例:

<p id="demo"></p>
<script>
var obj = JSON.parse('{ "name":jb51", "alexa":10000, "site":www.dbjr.com.cn }');
document.getElementById("demo").innerHTML = obj.name + ":" + obj.site;
</script>

首先通過parse()方法將JSON數(shù)據(jù)轉(zhuǎn)換為JavaScript對(duì)象,

解析完成后,我們就可以在網(wǎng)頁上使用JSON數(shù)據(jù)了

從服務(wù)端接收 JSON 數(shù)據(jù)(數(shù)組JSON數(shù)據(jù))

我們可以使用 AJAX 從服務(wù)器請(qǐng)求 JSON 數(shù)據(jù),并解析為 JavaScript 對(duì)象。

eg:
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
myObj = JSON.parse(this.responseText);
document.getElementById("demo").innerHTML = myObj.name;
} };
xmlhttp.open("GET", "/try/ajax/json_demo.txt", true); xmlhttp.send();

json_demo.txt服務(wù)端數(shù)據(jù)需要自個(gè)編寫。

JSON中有個(gè)異常解析數(shù)據(jù)

JSON 不能存儲(chǔ) Date 對(duì)象。如果你需要存儲(chǔ) Date 對(duì)象,需要將其轉(zhuǎn)換為字符串。之后再將字符串轉(zhuǎn)換為 Date 對(duì)象。

<p id="demo"></p>
<script>      //將字符串轉(zhuǎn)換為data對(duì)象
var text = '{ "name":"csdn", "initDate":"2018-12-14", "site":www.dbjr.com.cn}';
var obj = JSON.parse(text);
obj.initDate = new Date(obj.initDate);
document.getElementById("demo").innerHTML = obj.name + "創(chuàng)建日期: " + obj.initDate;
</script>

這時(shí)我們可以啟用JSON的第二個(gè)參數(shù):

<p id="demo"></p>
<script>
var text = '{ "name":"csdn", "initDate":"2018-12-14", "site":"www.dbjr.com.cn"}';
var obj = JSON.parse(text, function (key, value) {
  if (key == "initDate") {
    return new Date(value);
  } else {
    return value;
}});
document.getElementById("demo").innerHTML = obj.name + "創(chuàng)建日期:" + obj.initDate;

解析函數(shù):

JSON 不允許包含函數(shù),但你可以將函數(shù)作為字符串存儲(chǔ),之后再將字符串轉(zhuǎn)換為函數(shù)。

var text = '{ "name":"jb51", "alexa":"function () {
return 10000;}",
"site":"www.dbjr.com.cn"}';
var obj = JSON.parse(text);
obj.alexa = eval("(" + obj.alexa + ")");      注意:最好不要在json中使用函數(shù)
document.getElementById("demo").innerHTML = obj.name + " Alexa 排名:" + obj.alexa();

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接

相關(guān)文章

最新評(píng)論