js(Extjs6.0 ) 构建二维数组,用于显示到highchart柱状图中。

var ajax_cfg ={
	url : app.base + 'services/common/search/personQuail.json',
	success : function(resp){
		if(resp.success){
			var respList = resp.list;
			var chartsColumns_temp = new Array();
			/* 设置图标Y轴 */
			Ext.Array.each(respList,function(items){
				chartsColumns_temp.push(items.keyCode);
			});
			chartsColumns_temp=Ext.Array.unique(chartsColumns_temp);
			/* 构建二维数组 */
			var tableArray = [];
			for(var i=0;i<chartsColumns_temp.length;i++){
				//列明,有效,无效,过期
				tableArray.push([chartsColumns_temp[i],0,0,0]);
			}
			/* 为二维表设置数据 */
			Ext.Array.each(tableArray,function(tableItem){
				Ext.Array.each(respList,function(items){
					if(items.keyCode===tableItem[0]){
						if(items.status==='有效'){
							tableItem[1]=items.total;
						}
						if(items.status==='待审核'){
							tableItem[2]=items.total;
						}
						if(items.status==='失效'){
							tableItem[3]=items.total;
						}
					}
				})
			});
			/* 拆分二维表 */
			var chartsColumns = new Array();/* 数据列 */
			var chartsData = new Array();/*数据*/
			var yx = {name:'有效',data:[]};
			var dsh = {name:'待审核',data:[]};
			var sx = {name:'失效',data:[]};
			Ext.Array.each(tableArray,function(tableItem){
				chartsColumns.push(tableItem[0]);
				yx.data.push(tableItem[1])
				dsh.data.push(tableItem[2])
				sx.data.push(tableItem[3])
			});
			chartsData.push(yx,dsh,sx);
			console.log(chartsColumns);
			console.log(chartsData);
		        //这里将HighChart的 series属性值设置为chartsData,将xAxis的categories属性值设置为chartsColumns即可。
		};
	}
};
window.util.ajax(ajax_cfg);


你可能感兴趣的:(Extjs6.0)