JSON.parse:javascript中的JSON数据后出现意外的非空白字符

joh*_*abu 10 javascript json highcharts

通过Firebug调试我的highcharts javascript代码时出现此错误.以下是相关的代码行:

var valpair = [parseInt(items[0]),cumulative];
rain_series.data.push(JSON.parse(valpair)); 
Run Code Online (Sandbox Code Playgroud)

items[0]只是"1234567",如果我添加console.log(valpair)到我的代码,我得到这个输出:[1234567, 0]这似乎是有效的JSON.然而,我坚持我的错误(我搜索了一个解决方案,但没有为我的情况找到一个).
谁在这里谁知道我做错了什么?

Eth*_*own 30

这是因为你正在JSON.parse尝试解析一个不起作用的数组.只是摆脱了JSON.parse,这应该按预期工作.

当你调用JSON.parse不是字符串的东西时,它会通过调用.toString()它将它强制转换为字符串.如果valpair = [1234567, 0],则会valpair.toString()产生123457,0(这可能取决于JS引擎:我进入123457,0Chrome).这是无效的JSON:"意外的非空白字符"是逗号.