javascript - 在 Javascript 中解析有效的 JSON 文件时出错
问题描述
我在文件“lineValuesJSON.json”中有以下文本。
{"4": {"0": {"0": {"0": {"0": [0, 0, 0, 0]}}}}}
我通过在 HTML 中加载这个文件
<script type="text/javascript" src="../js/moveRating/lineValuesJSON.json"></script>
然后在Javascript中解析它
const lineValues = JSON.parse(lineValuesJSON);
我收到以下错误:
未捕获的 SyntaxError:意外的标记“:”
我已经检查了https://jsonformatter.curiousconcept.com/上的 json 代码,它说它是有效的。有谁知道我为什么会收到这个错误?
解决方案
JSON 不是 JavaScript。text/javascript
是 JSON 的错误 MIME 类型。JSON 不是脚本。<script>
元素不会创建以加载脚本的文件名命名的变量。您不能使用<script>
元素来加载 JSON。
如果要从 URL 加载 JSON,请使用fetch
或XMLHttpRequest
API 请求它。
推荐阅读
- web - 键盘可访问性 - 仅为键盘导航添加轮廓,但在鼠标单击时删除
- php - 使用jquery添加/删除后的动态行编号
- asp.net-core - 增加 Azure Web 服务/Razor Pages 的上传限制
- javascript - 在 React js 中提交时从自定义元素中读取值
- go - 如何使用 goroutine 执行 for 循环?
- python - 如何使用 python 程序中的安全 dll 执行 UDS 会话解锁?
- python - 熊猫数据框,使用字典乘以列值
- c++ - C++ 中是否有一个正则表达式函数来解析字符串中的 UUID?
- wordpress - 编辑 elementor 菜单车
- gatsby - 我们需要在 Gatsby 中从头开始安装所有插件吗?