通过Firebug调试我的highcharts javascript代码时出现此错误。以下是相关的代码行:
var valpair = [parseInt(items[0]),cumulative];
rain_series.data.push(JSON.parse(valpair));
items[0]
只是"1234567"
,如果我将console.log(valpair)
添加到我的代码中,我会得到此输出:[1234567, 0]
这似乎是有效的JSON。然而,我坚持我的错误(我搜索了一个解决方案,但没有为我的情况找到一个。)
谁在这里谁知道我做错了什么?
答案 0 :(得分:27)
这是因为你正在使用JSON.parse
来尝试解析一个不起作用的数组。只是摆脱JSON.parse
,这应该按预期工作。
当您对不是字符串的内容调用JSON.parse
时,它会通过调用.toString()
将其强制转换为字符串。如果valpair = [1234567, 0]
,则valpair.toString()
将产生123457,0
(这可能取决于JS引擎:我在Chrome中获得123457,0
。这是无效的JSON:“意外的非空白字符”是逗号。