JSON - 在JavaScript中解码字符串的正确方法

时间:2012-09-28 14:12:51

标签: php javascript dojo json

我想知道在Javascript代码中解码JSON字符串的最佳方法是什么。

我希望我的json字符串嵌入我的JS中,如下所示:

var params = dojo.fromJson('<?=json_encode($this->params); ?>');

dojo.fromJson解码我的字符串,json_encode是一个php函数,它编码服务器端的对象。

似乎json编码器忽略'chars并且仅转换为'“。因此,当$ this-&gt; params中的一个变量包含'字符时,就会出现Javascript错误。

例如:

var params = dojo.fromJson('{"id":"11","object_type":"Let's go"}');

最好的方法是什么?

感谢您的帮助。

1 个答案:

答案 0 :(得分:4)

由于您自己生成JSON,因此您可以信任它,因此您不需要将其视为JSON,而是可以将其视为JS。

var params = <?=json_encode($this->params); ?>;

PHP的JSON编码器将为您转义</script>,因此您无需担心使用数据终止脚本元素。