12

我正在尝试使用 highcharts 实现折线图,我想在其中为特定点着色。

所以我使用以下语句。

JSON.parse("[{x: 1,y: 0},{x:2,y:5,marker:{fillColor:'red'}},{x:3,y:8}]");

将点 (2,5) 着色为红色。

但是,它显示错误为SyntaxError: JSON.parse: expected property name or '}'

4

2 回答 2

28

有效的 JSON 字符串需要引用属性名称。

这可以通过引用如下属性名称来纠正:

JSON.parse('[{"x": 1, "y": 0}, {"x":2, "y":5, "marker": {"fillColor":"red"}}, {"x":3, "y":8}]');
于 2013-03-29T07:34:10.900 回答
3

如前所述,必须引用 JSON 对象名称。所以 JSON.parse 将只解析那个字符串,有效的 JSON。

但是,如果您出于任何原因无法更改字符串的格式,您也可以使用eval可以接受您的语法的函数对其进行解析。但要小心!这是一个很好的利用方式。

于 2013-03-29T07:50:35.653 回答