0

我有两个数组第一个是

lineChart = [{type : 'line' , data : arrdata }] ;

第二个是

mina = [{type : 'area' , data : [[1326844575000,10] ,[1326845955000,10]], color : 'H33FF00'},
        {type : 'area' , data : [[1326846575000,10] ,[1326848065000,10]], color : 'H33FF00'},
        {type : 'area' , data : [[1326848390000,10] ,[1326849755000,10]], color : 'H33FF00'} ];

当我把它们推到一起时:

mychart.push(lineChart);
mychart.push(mina); 

console.log(JSON.stringify(mychart)) ;

这就是我得到的

[{"type":"line","data":[]},[{"type":"area","data":[[1326844575000,10],[1326845955000,10]],"color":"H33FF00"},{"type":"area","data":[[1326846575000,10],[1326848065000,10]],"color":"H33FF00"},{"type":"area","data":[[1326848390000,10],[1326849755000,10]],"color":"H33FF00"}]]

我的问题是:如何使这个结果数组像这样一个数组?

[{"type":"line","data":[]},{"type":"area","data":[[1326844575000,10],[1326845955000,10]],"color":"H33FF00"},{"type":"area","data":[[1326846575000,10],[1326848065000,10]],"color":"H33FF00"},{"type":"area","data":[[1326848390000,10],[1326849755000,10]],"color":"H33FF00"}]
4

2 回答 2

3

只需将第一个对象推入数组即可。

mina.push(linechart);

此外,如果您特别希望在开始时使用折线图 mina.unshift(linechart);

http://jsfiddle.net/E2WT8/

mina = [{type : 'area' , data : [[1326844575000,10] ,[1326845955000,10]], color : 'H33FF00'},
        {type : 'area' , data : [[1326846575000,10] ,[1326848065000,10]], color : 'H33FF00'},
        {type : 'area' , data : [[1326848390000,10] ,[1326849755000,10]], color : 'H33FF00'} ];

lineChart = {type : 'line' , data : [] } ;

mina.unshift(lineChart);

alert(JSON.stringify(mina)) ;
于 2012-05-07T15:55:41.140 回答
1

首先:lineChart不是数组,它是一个对象。

mina是一个数组。

要添加lineChart,您可以使用mina.push(lineChart);.

另一种方法是var mychart = mina.concat([lineChart]);

另一个解决方案是合并它们:

function arrayMerge(array1, array2) {
    var i, j, newArray = []; for(i=0,j=array1.length;i<j;++i) {
        newArray.push(array1[i]);
    }
    for(i=0,j=array2.length;i<j;++i) {
        newArray.push(array2[i]);
    }

    return newArray;
}

var mergedArray = arrayMerge(mina, [lineChart]);

JSfiddle:http: //jsfiddle.net/4Zwkx/

于 2012-05-07T15:59:41.177 回答