js讀取json數據
{
"code": 0,
"msg": null,
"data": {
"pageNum": 1,
"pageSize": 5,
"total": 1,
"pages": 1,
"list": [
{
"pid": "0ccddaed355211e79954005056b233c9",
"sectionId": "1234567",
"tid": "0cb966d1355211e79954005056b233c9",
"first": "1",
"parentId": null,
"title": "五一要事",
"userId": "123456",
"userName": "王俐",
"postLayer": 1,
"status": "0",
"createTime": 1494401186000,
"content": "五一放假通知",
"aids": null,
"attachments": [
{
"aid": "0710f56b355911e79954005056b233c9",
"tid": "0cb966d1355211e79954005056b233c9",
"pid": "0ccddaed355211e79954005056b233c9",
"fileType": "png",
"fileName": "11.png",
"fileSize": 85379,
"downloads": 0,
"attachmentUrl": "201705\\a8ae2dd54f9d4c8aa7ead423f2578992.png",
"downloadUrl": "http://10.144.238.21:8080/starMOOC/forum/downloadFile/0710f56b355911e79954005056b233c9",
"previewUrl": "http://10.144.238.21:8080/starMOOC/forum/showImage/0710f56b355911e79954005056b233c9",
"uploadtime": 1494404183000,
"aids": null
}
]
}
],
"firstPage": 1,
"prePage": 0,
"navigatepageNums": [
1
]
}
}
js讀取JSON的方法我接觸到的有兩種:
方法一:函數構造定義法返回
var strJSON = "{name:‘json name‘}";//得到的JSON
var obj = new Function("return" + strJSON)();//轉換後的JSON對象
alert(obj.name);//json name
方法二:js中著名的eval函數
var strJSON = "{name:‘json name‘}";//得到的JSON
var obj = eval( "(" + strJSON + ")" );//轉換後的JSON對象
alert(obj.name);//json name
第二種方法需要註意的是,對象表達式{‘name‘:‘json name‘}必須用“()”擴住,否則
var strJSON = "{name:‘json name‘}";
var obj = eval(strJSON);
alert(obj.constructor);//String 構造函數
alert(obj.name);//undefine
必須把對象表達式擴起來eval執行才能生成一個匿名對象!
js讀取json數據