JS处理不能自定义二维数组

   今天才刚发现的问题,原来js没有办法自己定义二维数组,找了找之后发现,我们可以通过循环的方式定义二维三维……数组。

//先定义一个数组
var arr = [];   //我喜欢这么写,你也可以var arr = new Array(); 都一样。

   定义完数组之后就可以给他循环了,可以看到现在我们的数组Arr是一个空数组,直接这么循环是没有用带的,我结合我的实际情况,改成了这样:

var nn = 0;
            var list = [];
            $('.tr').each(function(){
                 list[nn] = [];
                 list[nn]['code'] = $(this).find('.tdcode').html();
                 ......
                 nn++;
            });

   可以通过这几行简单的代码看出来,我就是在每次给他二维赋值之前,先把他一维数组中的每一项,定义为一个数组,这样就可以避开无法直接定义二维数组的问题了。也可以直接把这些写成一个方法:

function Array_2(nRow,nColumn){
        var array1=new Array(); //定义一维数组
        for(i=0;i<nRow;i++){
            //将每一个子元素又定义为数组
            array1[i]=new Array(); 
//----------------------------------------
         for(n=0;n<nColumn;n++){
                array1[i][n] = ''; //此时aa[i][n]可以看作是一个二级数组
            }
//--------------------------------------
       }
        return array1;
    }

需要使用的时候直接按照需要传两个参数就可以了。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容