gpt4 book ai didi

javascript - 将 JSON 直接传递给 Javascript,无需 JSON.parse()

转载 作者:行者123 更新时间:2023-12-02 17:46:46 25 4
gpt4 key购买 nike

我注意到很多人将对象以 JSON 形式从 PHP 传递到 Javascript,如下所示:

var obj=JSON.parse('<?php echo json_encode($obj) ?>');

var obj=jQuery.parseJSON('<?php echo json_encode($obj) ?>');

为什么人们不直接像这样传递 JSON?

var obj=<?php echo json_encode($obj) ?>;

这对于我尝试过的几个对象来说效果很好。在某些情况下这不起作用吗?

最佳答案

passing objects from PHP to Javascript as JSON like this:

var obj=JSON.parse('<?php echo json_encode($obj) ?>');

哎呀!你是对的,这太复杂了。此外,它实际上在 JSON 字符串中的撇号和反斜杠方面存在严重问题,这些问题不会被转义并破坏字符串文字。

Why don't people pass JSON directly?

做得对的人确实是这样做的。

Are there cases when this won't work?

是的。有些 unicode 字符在纯 JSON 中有效,但在 JavaScript 中存在语法错误 - 请参阅 http://timelessrepo.com/json-isnt-a-javascript-subset了解详情。但是,json_encode 无论如何都会将它们输出为转义序列。

关于javascript - 将 JSON 直接传递给 Javascript,无需 JSON.parse(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21690603/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com