echarts:Uncaught TypeError: Cannot read property '0' of undefined 问题根源所在

(function(){
var addrs1=[];
var maps1=[];
var queuelist1=[];
var nqlist1=[];
var nserver1=[];
var times1=[];
var map1 = new Map();
$.getJSON("http://xx.xxx.xx.x:xxxx/cbsstxdorest/txdoQueueAndService").done(function(data){
    $.each(data,function(addr,obj){
        addrs1.push(addr);
        maps1.push(obj);
    });
    if(maps1.length==0){
        var row=document.getElementById("tips" );
        row.style.display="";
    }else{
        for(var i=0;i<maps1.length;i++){

            var queues=[];
            var nquequed=[];
            var servercnt=[];
            map1=maps1[i];

            for(var key in map1){
                var value = String(map1[key]);
                var x = value.indexOf(',');
                var temp = value.substring(8, x);
                queues.push(key);
                nquequed.push(temp);
                servercnt.push(value.substring(x + 11, value.length));
            };
            var n=0;
            var m=0;
            for(var l=0;l<nquequed.length;l++){
                if(nquequed[l]=="0"){
                    n+=1
                }else{
                    m+=1
                }
            };、
            if(m==0 && nquequed.length!=0) {

                queuelist1.push(queues);
                nqlist1.push(nquequed);
                nserver1.push(servercnt);
                var tl=queuelist1.length-1;
                var all = document.getElementById("row");
                var div = document.createElement("div");
                div.className = 'col-lg-4';
                var div0 = document.createElement("div");
                div0.className = 'panel panel-default';
                var div1 = document.createElement("div");
                div1.className = 'panel-body';
                var div2 = document.createElement("div");
                div2.className = 'flot-chart';
                div2.id = "b"+i;
                all.appendChild(div);
                div.appendChild(div0);
                div0.appendChild(div1);
                div1.appendChild(div2);
                var myChart = echarts.init(document.getElementById("b"+i));
                option = {
                    title: {text: titleMap.get(addrs1[i]), x: 'center'},
                    tooltip: {trigger: 'axis'},
                    legend: {x: 'center', y: 'bottom', data: ['server', 'queue']},

                    calculable: true,
                    chart: {
                        renderTo: 'container',
                        type: 'bar'
                    },
                    xAxis: [
                        {
                            name: '',  //队列
                            nameLocation: 'middle',
                            type: 'category',
                            data: queuelist1[tl]
                        }
                    ],

                    yAxis: [
                        {
                            name: '',//服务数量
                            nameLocation: 'middle',
                            type: 'value'
                        }
                    ],
                    series: [
                        {
                            name: 'server',
                            type: 'bar',
                            data: nserver1[tl]
                        },
                        {
                            name: 'queue',
                            type: 'bar',
                            barGap: '1%',
                            data: nqlist1[tl]
                        }
                    ],
                    color: ['#314656', '#c23531']
                };
                myChart.setOption(option);
            }
        }
    }
});
}();
这是一个解析数据循环向页面内插入图的自调函数,曾经标题错误出现在这个函数里,用了我一下午的时间,可能大牛用不了这么久!

现在我跟大家说一下这个问题所在->>就是data  没有找到你给它东西,它只找到了undefind

date对空值的要求如下:

空值:

当某数据不存在时(ps:不存在不代表值为 0),可以用 '-' 或者 null 或者 undefined 或者 NaN 表示。

例如,无数据在折线图中可表现为该点是断开的,在其它图中可表示为图形不存在。



echarts要求这些都可以  那么出现这个错误唯一原因就是undefind,就是你传数据未定义!或者说不存在!所以这个时候你就仔细找找你的data传的值吧!
上面小编出现的错误是:

var tl=queuelist1.length-1;
这块小编之前没用这个取queuelist1的最后一组值的下标,直接用的循环变量i,所以错误很低级,但是要牢记错误是怎么发生!
《博客萌新,请多关照。》

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值