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

JavaScript實(shí)現(xiàn)字符串轉(zhuǎn)JSON對(duì)象的4種方法代碼

 更新時(shí)間:2023年10月09日 15:54:35   作者:不掉頭發(fā)!  
這篇文章主要給大家介紹了關(guān)于JavaScript實(shí)現(xiàn)字符串轉(zhuǎn)JSON對(duì)象的4種方法,使用ajax的開發(fā)項(xiàng)目過程中,經(jīng)常需要將json格式的字符串返回到前端,前端解析成js對(duì)象(JSON),需要的朋友可以參考下

在很多時(shí)候我們都需要將數(shù)據(jù)轉(zhuǎn)換為JSON的格式去進(jìn)行請(qǐng)求,這里就給大家介紹幾種轉(zhuǎn)JSON的方法

1. javascript函數(shù)eval()

語法:

var obj = eval ("(" + txt + ")");  //必須把文本包圍在括號(hào)中,這樣才能避免語法錯(cuò)誤 

eval()定義:eval() 函數(shù)可計(jì)算某個(gè)字符串,并執(zhí)行其中的的 JavaScript 代碼。

由于 JSON 語法是 JavaScript 語法的子集,JavaScript 函數(shù) eval() 可用于將 JSON 文本轉(zhuǎn)換為 JavaScript 對(duì)象。

注意:當(dāng)字符串中包含表達(dá)式時(shí),eval() 函數(shù)也會(huì)編譯并執(zhí)行,轉(zhuǎn)換會(huì)存在安全問題。

2. 瀏覽器自帶對(duì)象JSON,JSON.parse()

語法:

var obj = JSON.parse(text[, reviver])
//text:必需, 一個(gè)有效的 JSON 字符串。解析前要確保你的數(shù)據(jù)是標(biāo)準(zhǔn)的 JSON 格式,否則會(huì)解析出錯(cuò)。
//reviver: 可選,一個(gè)轉(zhuǎn)換結(jié)果的函數(shù), 將為對(duì)象的每個(gè)成員調(diào)用此函數(shù)。

JSON.parse()比eval()安全,而且速度更快

支持主流瀏覽器:Firefox 3.5,IE 8,Chrome,Opera 10,Safari 4。

注意:IE8兼容模式,IE 7,IE 6,會(huì)存在兼容性問題。

3. jQuery插件,$.parseJSON()

語法:

var obj = $.parseJSON(json)  //json:String類型,傳入格式有誤的JSON字符串可能導(dǎo)致拋出異常

4. ajax請(qǐng)求獲取json數(shù)據(jù)時(shí),$.getJSON()

語法:

jQuery.getJSON(url,data,success(data,status,xhr))
//url    必需。規(guī)定將請(qǐng)求發(fā)送的哪個(gè) URL。
//data    可選。規(guī)定連同請(qǐng)求發(fā)送到服務(wù)器的數(shù)據(jù)。
//success(data,status,xhr)    可選。規(guī)定當(dāng)請(qǐng)求成功時(shí)運(yùn)行的函數(shù)。

這個(gè)時(shí)候返回的data已經(jīng)是JSON對(duì)象,不需要再進(jìn)行轉(zhuǎn)換。

$.getJSON() 是簡(jiǎn)寫的 Ajax 函數(shù),等價(jià)于:

$.ajax({
  url: url,
  data: data,
  success: callback,
  dataType: "json"
});

總結(jié) 

到此這篇關(guān)于JavaScript實(shí)現(xiàn)字符串轉(zhuǎn)JSON對(duì)象的4種方法的文章就介紹到這了,更多相關(guān)JS字符串轉(zhuǎn)JSON對(duì)象內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論