• 数组长度不一样 在对应的下边添加空字符串(用for循环 不要用for in语法) 针对echarts的折线图


    1.有两个长度不一样的数组

    var arr = [
      [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18],
      [2,4,7]
    ];

    2.通过getMaxIndex函数获取到arr数组里面某个数组的最大长度

    function getMaxIndex(arr) {
        var max = arr[0].length;
        //声明了个变量 保存下标值
        var index = 0;
        for (var i = 0; i < arr.length; i++) {
            if (max < arr[i].length) {
                max = arr[i].length;
                index = i;
            }
        }
        return index;
    }

    3.通过getitemindex函数把arr里面的数组补齐

    
    
    function getitemindex(arr,maxindex) {
        var indexarr = [];

        for(var i in arr){
          var newarr= [];
          for(var j=0;j<arr[i].length; j++ ){
            if( arr[i][j] != arr[maxindex][j]){
              arr[i].splice(j,0,' ')
              newarr.push(j);
            }
          }
          if(arr[i].length < arr[maxindex].length){
            for(var k=arr[i].length;k<arr[maxindex].length; k++ ){
              arr[i].splice(k,0,' ')
              newarr.push(k);
            }
          }
          indexarr.push(newarr);
        }
        return indexarr;
    }

    var getitemindex = getitemindex(arr,maxindex);
    console.log(getitemindex);
     

    得到如下:

    4.目标数组yarr

    var yarr = [
      [11,22,33,44,55,66,77,88,99,100,111,122,133,144,155,166,177,188],
      [22,44,77]
    ]

    5.在yarr的相应的下标(getitemindex)中添加空字符串

    for(var m in yarr){
      for(var n=0;n < getitemindex[m].length; n++){
        yarr[m].splice(getitemindex[m][n], 0, ' ');
      }
    }
    console.log(yarr);

    得到如下:

    注意:在循环遍历一个二维数组的时候不要用for in语法,要用for循环。不然会出现问题。(找这个bug找了几个小时,已经哭晕在厕所 T-T)

  • 相关阅读:
    dockerk个人学习(0)
    ubuntu编译python源码的坑
    查找大目录
    ubuntu 远程gui显示
    paramiko模块
    python open和file的区别
    python type metaclass
    python 生成器 迭代器 yiled
    博客暂停更新,请移步新主页
    win10禁用自动更新服务
  • 原文地址:https://www.cnblogs.com/pwindy/p/14010773.html
Copyright © 2020-2023  润新知