gpt4 book ai didi

javascript - 无法使 JSON 解析和评估在 JavaScript 中工作

转载 作者:行者123 更新时间:2023-11-30 10:20:24 25 4
gpt4 key购买 nike

正如我上面所说,我有一个 PHP 脚本和一个 JavaScript,我有一些对象可以在服务器端读取文本文件,然后将数据传递给 JavaScript。

这是我的全部代码:

map .html:http://www.pastebin.com/b45mbvgp和 index.php:http://www.pastebin.com/zibdquzu

真正重要的部分:

var x = <?php echo json_encode($streetsObject); ?>;
var obj = eval("("x")");

我也试过

var obj = JSON.parse(x);

X 变量确实设置为传递对象的大小,527(已测试)但是当我尝试使用 eval 或 JSON 解析函数时根本不起作用。我的 html 代码中是否有某种错误干扰了我对其他库的调用?如果是这样那就太奇怪了,因为 kinetic.js 工作得很好。我一直在谷歌搜索 JSON 的例子,但我还没有看到解析传递的对象的例子,它都是本地对象的例子:(

(如果我删除 eval/json 代码行,代码工作正常)

最佳答案

简单地做:

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

JSON 表示 JavaScript 对象表示法。如果你直接将 JSON 插入到 Javascript 中,它会运行良好,就在这种情况下。无需解析。不建议将 eval 用于 JSON 解析,但这同样适用(注意 eval 实际上有效,因为 JSON 是有效的 Javascript!)。

JSON.parse 仅当您在 Javascript 字符串中包含 JSON 时才需要。所以这会起作用:

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

关于javascript - 无法使 JSON 解析和评估在 JavaScript 中工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21712672/

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