解析Json字符串的三種方法日常常用
在很多時候,我們的需要將類似 json 格式的字符串?dāng)?shù)據(jù)轉(zhuǎn)為json,
下面將介紹日常中使用的三種解析json字符串的方法
1.首先,我們先看一下什么是 json 格式字符串?dāng)?shù)據(jù),很簡單,就是 json 字符串化,在json 最外加單/雙號變?yōu)樽址當(dāng)?shù)據(jù)
var str='{"name":"Mike","sex":"女","age":"29"}';
var t2="[{name:'lisi',age:'30'},{name:'wangwu',age:'16'},{name:'tianqi',age:'7'}] ";
2.我們用Object.prototype.toString.call() 來檢測數(shù)據(jù)類型
console.log(Object.prototype.toString.call(str));//[object String] console.log(Object.prototype.toString.call(t2));//[object String]
第一種方法:evel();
特點:安全性底,不建議使用,單個JSON對象時要加括號,JSON數(shù)組就不需要了
示例:
var evajson =eval('('+str+')');
var evajsarr = eval(t2);
轉(zhuǎn)換后,再使用Object.prototype.toString.call() 來檢測轉(zhuǎn)換后的數(shù)據(jù)類型
console.log(Object.prototype.toString.call(evajso))//[object Object] console.log(Object.prototype.toString.call(evajsarr))//[object Array]
第二種:new Function()
注意:函數(shù)要有返回,所以要加“return”;
示例:
var fnjson = new Function("return"+str)();
var fnjsonArr = new Function("return"+t2)();
轉(zhuǎn)換后,再使用Object.prototype.toString.call() 來檢測轉(zhuǎn)換后的數(shù)據(jù)類型
console.log(Object.prototype.toString.call(fnjson ))//[object Object] console.log(Object.prototype.toString.call(fnjsonArr ))//[object Array]
第三種:JSON.parse()
特點:主流,兼容性好,推薦
示例:
var parjson = JSON.parse(str); var parjson = JSON.parse(t2);
檢測轉(zhuǎn)后的數(shù)據(jù)類型
console.log(Object.prototype.toString.call(parjson ))//[object Object] console.log(Object.prototype.toString.call(parjson ))//[object Array]
總結(jié)
以上所述是小編給大家介紹的解析Json字符串的三種方法日常常用,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
- Json_decode 解析json字符串為NULL的解決方法(必看)
- 解析錯誤富文本json字符串(帶雙引號)的快速解決方法
- JS中Eval解析JSON字符串的一個小問題
- jquery解析json格式數(shù)據(jù)的方法(對象、字符串)
- Jquery解析json字符串及json數(shù)組的方法
- php解析http獲取的json字符串變量總是空白null
- VBScript把json字符串解析成json對象的2個方法
- 解析JSON對象與字符串之間的相互轉(zhuǎn)換
- js 將json字符串轉(zhuǎn)換為json對象的方法解析
- jQuery怎么解析Json字符串(Json格式/Json對象)
- JS解析json數(shù)據(jù)并將json字符串轉(zhuǎn)化為數(shù)組的實現(xiàn)方法
相關(guān)文章
java前端javascript生成動態(tài)表格示例演示
這篇文章主要為大家介紹了java前端javascript生成動態(tài)表格的實現(xiàn)示例及演示,2022-03-03
微信小程序?qū)崿F(xiàn)移動端滑動分頁效果(ajax)
這篇文章主要為大家詳細(xì)介紹了微信小程序?qū)崿F(xiàn)移動端滑動分頁效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-06-06
用js控制組織結(jié)構(gòu)圖可以任意拖拽到指定位置
用js控制生成了一個組織結(jié)構(gòu)圖并設(shè)置這個組織結(jié)構(gòu)可以任意拖動到指定位置,具體代碼如下2014-01-01
javascript tips提示框組件實現(xiàn)代碼
一個簡單的類似title的提示效果,但現(xiàn)實內(nèi)容可以很豐富,以上js另存為tip.js,下面是使用的demo。2010-11-11
JS實現(xiàn)帶鼠標(biāo)效果的頭像及文章列表代碼
這篇文章主要介紹了JS實現(xiàn)帶鼠標(biāo)效果的頭像及文章列表代碼,涉及JavaScript響應(yīng)鼠標(biāo)事件動態(tài)切換頁面元素樣式的相關(guān)技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-09-09

