JSON.stringify()对于序列化JSON对象是否可靠?

时间:2010-04-27 17:13:18

标签: php javascript json serialization stringification

我需要将完整的对象从Javascript发送到PHP。在PHP端执行JSON.stringify()然后执行json_decode()似乎很明显,但这会允许带有“:”和“,”的字符串吗?我是否需要在可能导致问题的大用户输入字符串上运行escape()函数?逃脱功能会是什么?我认为逃避不适用于我的目的。

我需要了解JSON.stringify()是否有任何缺点?

由于

2 个答案:

答案 0 :(得分:2)

是的,它在任何体面的实现中都是可靠的(比如Crockford's),不,你不必先通过escape运行它(如果这样做,PHP会很困惑另一端)。浏览器开始得到他们自己的JSON东西实现(现在它在5th edition spec),但是现在,你可能最好使用Crockford或类似的东西。

答案 1 :(得分:0)

有一个很好的描述JSON.stringify()在这里做什么:

http://www.json.org/js.html

如果您想确定和/或进行更改,也可以使用源代码。

我已经使用了几个月没有问题。

另外, 我不确定你是否看过json_decode的手册页,还有很多好的信息: http://ie2.php.net/manual/en/function.json-decode.php

HTH