JavaScript Array JSON.parse(string)

时间:2017-09-04 04:22:07

标签: javascript json ajax echarts

我正在使用eCharts(一个JavaScript图表库)并且有一些东西正在我的头脑中。这些示例使用以下代码进行markLine(并且它按预期工作)

markLine : {
    symbol: 'none',
    tooltip: {show: false},
    itemStyle:{
        normal:{
            lineStyle:{
                type: 'solid',
                color: '#CCCCCC'
            },
            tooltip:{
                show: false
            }
        }
    },
    data: [ [{ "xAxis" : 250, "yAxis" : 0 }, {"xAxis": 250, "yAxis" : 250 }] ]
}

我需要能够将数据部分作为JSON字符串,但我无法使其工作。
注意:为简单起见,我收到的相同JSON信息是一个名为arrayString 的字符串:

markLine : {
    symbol: 'none',
    tooltip: {show: false},
    itemStyle:{
        normal:{
            lineStyle:{
                type: 'solid',
                color: '#CCCCCC'
            },
            tooltip:{
                show: false
            }
        }
    },
    data: (function (){
        var res = [];
        var arrayString = "";

        arrayString = '[{ "xAxis" : 250, "yAxis" : 0 }, {"xAxis": 250, "yAxis" : 250 }]';
        res = JSON.parse(arrayString);

        return res;
    })()
}

当我运行JSON.parse代码时,图表不会显示,但如果我在console.log中显示'res'的值,则表明数组似乎是正确创建的。

有人能协助我解决这个问题吗?

参考文献: 这两个例子都使用了markLine:
http://echarts.baidu.com/echarts2/doc/example/line1.html#-en
http://echarts.baidu.com/echarts2/doc/example/bar13.html#-en

1 个答案:

答案 0 :(得分:1)

您是否应该添加到您的res数组而不是覆盖它?

res.push(JSON.parse(arrayString));