ECMA-262(E3) 中沒有將JSON概念寫到標(biāo)準(zhǔn)中,還好在ECMA-262(E5)中JSON的概念被正式引入了,包括全局的JSON對(duì)象和Date的toJSON方法。
1,eval方式解析,恐怕這是最早的解析方式了。如下:
代碼如下:
function strToJson(str){ var json = eval('(' + str + ')'); return json; }
記得別忘了str兩旁的小括號(hào)。
2,new Function形式,比較怪異哦。如下
代碼如下:
function strToJson(str){ var json = (new Function("return " + str))(); return json; }
3,使用全局的JSON對(duì)象,如下:
代碼如下:
function strToJson(str){ return JSON.parse(str); }
使用JSON.parse需嚴(yán)格遵守JSON規(guī)范,如屬性都需用引號(hào)引起來,如下
代碼如下:
var str = '{name:"jack"}'; var obj = JSON.parse(str); // --> parse error
name沒有用引號(hào)引起來,使用JSON.parse所有瀏覽器中均拋異常,解析失敗。而前兩種方式則沒問題。
另見:Chrome中JSON.parse的特殊實(shí)現(xiàn)
更多相關(guān)教程請(qǐng)?jiān)L問 JavaScript視頻教程
聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com