此代码有效
let json_data = '<?php echo json_encode(["name" => "test"]) ?>';
let data = JSON.parse(json_data);
问题代码
let json_data = '<?php echo json_encode(["name" => "cote d'ivoire"]) ?>';
let data = JSON.parse(json_data);
未捕获的SyntaxError:意外的标识符
如何解决
答案 0 :(得分:0)
问题是您的JSON包含一个'
字符,该字符与您用来分隔字符串的字符相同。
最简单的解决方案是将JSON处理为JavaScript (数据格式是编程语言的子集)。
let data = <?php echo json_encode(["name" => "cote d'ivoire"]) ?>;
如果您真的想生成一个JSON的 string ,然后可以对其进行解析,那么最好的工具是json_encode
(用于在其中转义特殊字符)(还会在其周围添加引号)它为您服务,因此您无需手动进行操作。)
let json_data = <?php echo json_encode(json_encode(["name" => "test"])); ?>;
let data = JSON.parse(json_data);