2012-05-31 73 views
0

JSON.stringify不工作在黑莓手机它在iphone和其他浏览器工作得很好。它不是在促使它下面的例子在黑莓手机:JSON.stringify不工作在黑莓手机

function sup() { 
     this.name; 
    } 

    var SUP = new sup(); 

     SUP.name = 'XYZ' ; 
     var tt = JSON.stringify(SUP); 
     alert(tt); 
+0

通常情况下,堆栈溢出的问题应该是*问题*([更多](http://stackoverflow.com/faq))。我猜你的问题是:我应该怎样处理Blackberry浏览器而不支持'JSON'对象? –

回答

1

您应该创建一个回退机制,以便浏览器使用本机JSON支持(如果存在),否则它会下载@ T.J的库。克劳德指出

像这样的东西应该做的伎俩

<script>window.JSON|| 
    document.write("<script src='js/my-json-library.js'>\x3C/script>") 
</script> 
+0

我可以在哪里下载这个my-json-library.js? – samirprogrammer

+0

@samirprogrammer:https://github.com/douglascrockford/JSON-js/ –

+0

我需要添加所有JavaScript文件还是只命名为JSON.js?因为它是在线返回错误JSON.parse(this,filter); – samirprogrammer

1

这听起来像那个版本的黑莓浏览器不支持新的JSON对象,这是在ES5(所以,刚刚)推出。你可以找到几个polyfill/shims,包括ones from the "introducer" of JSON himself

+0

感谢Crowder ..其实我想将这个对象传递给Ajax调用...有没有其他方法可以将多个对象传递给ajax调用..您的帮助higly赞赏! – samirprogrammer

+0

@samirprogrammer:我可能会坚持使用JSON。 JSON并不是一种将复杂的对象图发送到服务器的不好方法。请注意,上面链接中的'json2.js'最小化为约3,400字节,其中大部分是专门用于'JSON.stringify'的,因此将它添加到现有脚本中不会产生明显的差异。 –