繁体   English   中英

JSON.parse在旧的移动浏览器上不起作用

[英]JSON.parse not working on older mobile browsers

我有一个JSON字符串A。A的格式为:

'[{"key1":"val1",...,"keyn":"valn"},{...},...,{...}]'

A是使用json_encode(Array)在php服务器上创建的。

var str = JSON.parse(A); 适用于所有桌面浏览器,移动浏览器,移动chrome等。

var str = JSON.parse(A); 在Android 2.2默认浏览器和Blackberry设备的浏览器中引发异常(“ exception:无法解析字符串”)。

JSON.parse只能在浏览器中使用,而不能与我的JSON字符串A一起使用。此浏览器上的json解析器中是否有错误?

编辑。 如果我将A放入textArea中,然后将字符串直接复制并粘贴到javascript代码中。。JSON.parse('[{“ key1”:“ val1”,...,“ keyn”:“ valn”},{。 ..},...,{...}]')的作品。

但是,这不起作用-> JSON.parse($('div')。html(A).text());

较旧的JSON.parse仅将解析对象。

尝试如下所示的环绕声...

'{ "data" : [{"key1":"val1",...,"keyn":"valn"},{...},...,{...}] }'

如果不行...您可以尝试

function getObj(json){
  return (new Function(" return (" + json + "); "))();
}

var value = getObj('[{"key1":"val1",...,"keyn":"valn"},{...},...,{...}]');

尝试:

var myJSON = eval(yourJSONString);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM