JavaScript——数组的遍历和多维数组

admin2024-07-03  35

目录

任务描述

相关知识

数组的遍历

多维数组的实现

编程要求

任务描述

本关任务:将一个一维数组转换为二维数组,行优先。

相关知识

数组的遍历

数组的遍历指按顺序访问你数组的每一个元素。有两种方法:

  • 使用for循环
//依次在浏览器的控制台输出one,two,three,four
var stringArray = ["one","two","three","four"];
for(var i=0,sLength=stringArray.length;i<sLength;i++) {
    console.log(stringArray[i]);
}
  • 使用forEach()方法 forEach()方法的参数是一个无名字的函数,函数有三个参数,第一个参数是当前的数组元素,第二个参数是当前的索引,第三个参数是数组对象的索引。与for循环的区别是无法用break中断循环。
var numArr = [10,11,12,13,14];
numArr.forEach(function(mem,i,arr) {
    mem *= 10;
    arr[i] = mem;
});
console.log(numArr);//输出[100,110,120,130,140]

多维数组的实现

多维数组实际上就是数组的数组,指数组的每一个元素也是一个数组,这里仅讨论二维数组。

JavaScript中二维数组的列的长度不唯一,第一列可以有4个元素,第二列可以有5个元素,等等。

  • 二维数组的创建 创建已知的二维数组:
var multiArr = [[1,2,3,4],[5,6,7],[8,9]];

创建仅知道长度的二维数组

//创建一个4行6列的二维数组
var muArr = new Array(4);
for(var i = 0;i <4;i++) {
    muArr[i] = new Array(6);
}
  • 二维数组的读写 二维数组的读写用数组名[][]的方式,第一个中括号内为行数,从0计数,第二个中括号内为列数,也从0计数。 以上面的数组multiArr为例:
var multiArr = [[1,2,3,4],[5,6,7],[8,9]];
console.log(multiArr[1][1]);//读元素,输出6
multiArr[0][0] = 0;//写元素

编程要求

本关的编程任务是补全右侧代码片段中beginend中间的代码,具体要求如下:

  • 将一维数组arr转为ab列的二维数组,行优先;

  • 返回该二维数组;

var arr = [1,2,3,4,5,6,7,8,9,0,10,11,12,13,14,15,16,17,18,19,20,21,23,22];
function mainJs(a,b) {
    a = parseInt(a);
    b = parseInt(b);
    //请在此处编写代码
    /*********begin*********/
    var count = 0;
    brr = new Array(a);
    for (var i = 0; i < a; i++) {
        brr[i] = new Array(b);
    }
    for (var i = 0; i < a; i++){
        for (var j = 0; j < b; j++){
            brr[i][j] = arr[count++];
        }
    }
    return brr;
    /*********end*********/
}
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明原文出处。如若内容造成侵权/违法违规/事实不符,请联系SD编程学习网:675289112@qq.com进行投诉反馈,一经查实,立即删除!