Jquery解析Json对象方法总结大全
把json字符串变为json对象的方法总结:
众所周知,在Js/Jquery中是可以使用json对象的,我们要想使用json对象,前提是要把接收到的json字符串转为json对象哦。
下面站长就为大家总结了Jquery解析json的常用方法,希望对大家有帮助
本章方法讲解:不明白的地方,加群@群主即可
1,Jquery发送Post/Get请求,直接解析Json数据(json对象)
2,用eval解析json字符串对象
<!DOCTYPE html> <html> <head> <title>Jquery解析Json对象-yunjson.com</title> <script src="http://cdn.bootcss.com/jquery/1.11.1/jquery.min.js" type="text/javascript"></script> <script> /* 把json字符串变为json对象的方法总结: 众所周知,在Js/Jquery中是可以使用json对象的,我们要想使用json对象, 前提是要把接收到的json字符串转为json对象哦。 下面站长就为大家总结了Jquery解析json的常用方法,希望对大家有帮助 本章方法讲解:不明白的地方,加群@群主即可 1,Jquery发送Post/Get请求,直接解析Json数据(json对象) 2,用eval解析json字符串对象 3,用JSON.parse 解析json对象 */</script> </head> <body> <script type="text/javascript"> //以下结果,请在console控制台中查看(F12或者审查元素,即可进入Console控制台) //第一种用法:Jquery接收Post/Get返回值,解析Json数据 //($.post,$.get,$.getJSON,$.ajax等等 解析json的原理都一样) $.post('你的URL', { action: 'GetList' }, function (data) { //此post请求为异步,上面是模拟的测试地址,正式使用时,请换成自己的接口地址 //为了方便,在这里我就直接模拟出json对象数据,直接赋值咯(小盆友不要学我懒省事,哈哈) data = { "Name": "Json在线解析", "ProUrl": "www.yunjson.com", "SiteID": 1472222, "SiteLink": "官方QQ群:308250404", "SiteInfo": "Json在线工具(http://www.yunjson.com),Json学习资料专题模块,只为你提供最好的Json学习资料,感谢你的支持" }; if (data) { //接收数据成功,开始处理json对象(此时data就是接收到的json对象) //现在我们可以得到json数据中,我们需要的某些字段值了 //为了方便查看,直接在控制台中打印出来咯 console.log(data.Name); console.log(data.ProUrl); console.log(data.SiteID); console.log(data.SiteLink); console.log(data.SiteInfo); } }, 'json'); //PS:以上请求中解析json的操作原理,可以简化的表示为以下方法 //定义一个json对象,然后,直接取值(对象.方法名) var data = { "Name": "Json在线解析", "ProUrl": "www.yunjson.com", "SiteID": 1472222, "SiteLink": "官方QQ群:308250404", "SiteInfo": "Json在线工具(http://www.yunjson.com),Json学习资料专题模块,只为你提供最好的Json学习资料,感谢你的支持" }; console.log(data); console.log("第一种用法:Jquery用Post/Get调用Json数据"); console.log("Name:--" + data.Name); console.log("ProUrl:--" + data.ProUrl); console.log("SiteID:--" + data.SiteID); console.log("SiteLink:--" + data.SiteLink); console.log("SiteInfo:--" + data.SiteInfo); console.log("\r\n-------------------------我是第一和二的方法分割线哦-----------------------------------------------------\r\n"); // ------------------------------我是第一和二的方法分割线哦---------------------------------------------------------- //第二种用法:用eval解析json对象(需要引用jquery插件) var yunjsontr = '{ "Name": "Json在线解析", "ProUrl": "www.yunjson.com", "SiteID": 1472222, "SiteLink": "官方QQ群:308250404", "SiteInfo": "Json在线工具(http://www.yunjson.com),Json学习资料专题模块,只为你提供最好的Json学习资料,感谢你的支持" }'; evalfun(yunjsontr) function evalfun(yunjsontr) { var jsoninfo = eval('(' + yunjsontr + ')'); //此时为json对象,下面可直接调用 console.log(jsoninfo); console.log("第二种用法:用eval解析json对象,结果值如下"); console.log("Name:--" + jsoninfo.Name); console.log("ProUrl:--" + jsoninfo.ProUrl); console.log("SiteID:--" + jsoninfo.SiteID); console.log("SiteLink:--" + jsoninfo.SiteLink); console.log("SiteInfo:--" + jsoninfo.SiteInfo); } console.log("\r\n-------------------------我是第二和三的方法分割线哦-----------------------------------------------------\r\n"); // ------------------------------我是第二和三的方法分割线哦---------------------------------------------------------- //第三种用法:使用JSON.parse 解析json对象(需要引用jquery插件) var yunjsontr = '{ "Name": "Json在线解析", "ProUrl": "www.yunjson.com", "SiteID": 1472222, "SiteLink": "官方QQ群:308250404", "SiteInfo": "Json在线工具(http://www.yunjson.com),Json学习资料专题模块,只为你提供最好的Json学习资料,感谢你的支持" }'; jsonparse(yunjsontr); function jsonparse(yunjsontr) { var jsonrest = JSON.parse(yunjsontr); //此时为json对象,下面可直接调用 console.log(jsonrest); console.log("第三种方法:使用JSON.parse 解析json对象"); console.log("Name:--" + jsonrest.Name); console.log("ProUrl:--" + jsonrest.ProUrl); console.log("SiteID:--" + jsonrest.SiteID); console.log("SiteLink:--" + jsonrest.SiteLink); console.log("SiteInfo:--" + jsonrest.SiteInfo); } </script> </body> </html>