Ajax中responseText解析json格式数据

Ajax中responseText的json格式数据

  向浏览器发送数据请求,返回的responseText是json数据格式,如果要使用其中的数据,需要进行解析。下面是两种解析方法:

方法一:

  xhr = new XMLHttpRequest()  // 创建XMLHttpRequest对象

  var  data = xhr.responseText;   // 获取响应数据

  var json=JSON.parse(data);  // 使用JSON.parse()进行解析:使用JSON对象的静态方法parse(),将字符串解析为对象。

 

方法二: 

  xhr = new XMLHttpRequest()  // 创建XMLHttpRequest对象

  var  data = xhr.responseText;   // 获取响应数据

  var jsonObject=eval("("+result+")"); // 使用eval() 进行解析,其中"(" + result+ ")"的两个括号是一定要写的,意思是将其中的relult转换成表达式。但是eval() 存在安全隐患。

 

  相关知识点:表达式还是语句?

  如果在行首是一个大括号,那么它到底是表达式还是语句呢?遇到这种情况,JavaScript引擎一律解释为代码块,但是如果非要解析成对象,该怎么办呢?那就在使用括号将其包裹起来,这种情况在eval() 语句中表现的最明显了

eval('{foo:123}') // 解析成代码块——表示一个代码块中有一个foo标签,指向一个表达式123
eval('({foo:123})') // 解析为一个对象——表示一个对象,其中属性foo,指向了123

 

转载于:https://www.cnblogs.com/david-lcw/p/10447259.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值