【发布时间】:2016-03-11 14:15:57
【问题描述】:
我正在尝试解析 JSON 字符串。这是字符串的内容:
[[ new Date(2016, 2, 11), 439 ],[ new Date(2016, 2, 10), 1110 ],[ new Date(2016, 2, 9), 9 ],[ new Date(2016, 2, 8), 2 ]]
这是代码
var data = JSON.parse(str);
这是错误
Uncaught SyntaxError: Unexpected token e
如何准备这个字符串以供 JSON.parse() 解析?
【问题讨论】:
-
这不是 JSON。你到底想做什么?字符串从何而来?任何声称返回 JSON 的 API 都不会产生这种情况。
-
运行你的“json”here
-
我使用谷歌图表。我从 PHP 返回这些数据。我以这种格式回应它,以便日历接受它。当我将它直接从 PHP 回显到 JavaScript 时它可以工作,但是当我从 AJAX 加载数据并使用
JSON.parse()时它不起作用 -
@Z0q — JSON 是一种基于 JavaScript 对象文字语法子集的数据格式。您不能将任何您喜欢的 JavaScript 表达式放入 JSON 文本中。
-
对,那是因为它不是 JSON。它是 有效的JavaScript 语法,但它是JSON 语法的超集。您不能在 JSON 中嵌入表达式,因此您的日期应该以字符串或时间戳的形式输出。
标签: javascript json string parsing