JavaScript:数组

一、初识数组

         数组是一种复杂数据类型, 用于将一组数组集合在一起。

         通过一个变量就可以访问一组数据。

         数组之间通过逗号分隔

         数组中的"索引/下标",是从0开始计算的。

        // 声明数组
        let class02= ["tom","lily","tony" ]
        // 打印数组
        console.log(class02);
        // 打印数组长度
        console.log(class02.length); //3
        // 打印数组中下标为1的元素
        console.log(class02[1]); //lily


        // 数组可以是任意类型的元素,例如字符串,数字,数组。
        let arr1 = [1,2,3,4,5,6]
        let arr2 = ["string",NaN,undefined,null,arr1]
        console.log(arr2);

二、创建数组

2.1:以new Array()方式创建数组

        var arr = new Array();
        console.log(arr); //Array(0)
        var arr = new Array(5);
        console.log(arr); //[empty*5]
        arr = new Array("tom","tony","bob");
        console.log(arr); //["tom","tony","bob"]

2.2: 使用数组字面量创建数组

        var mood = ['sad','happy',,,,,'happy']
        console.log(mood.length); //7
        console.log(mood[6]); //happy

三、数组的基本操作

3.1:获取元素长度

        console.log(数组名.lenght);

3.2:修改数组长度

        // 数组名.length = number
        var arr = [0,1,2,3]
        console.log(arr.length); //4
        arr.length = 5
        console.log(arr); //[0,1,2,3,empty]
        // 如果长度改为比之前短的长度,则将会砍掉多余数组元素
        arr.length = 3
        console.log(arr); //[0,1,2]

 3.3:添加数组元素

        arr[4] = 3
        console.log(arr); // [0,1,2,empty,3]

3.4:修改数组元素

        arr[0] = 1
        console.log(arr); //[1,1,2,empty,3]

3.5:删除数组元素

        // delete 数组名[index] 删除数组中的某个元素值
        delete arr[1]
        console.log(arr); //[1,empty,2,empty,3]

3.6:遍历数组

        // 需求:得到数组的累加和
        let arr1 = [10,20,30,40,50,60]
        var sum = 0;
        for(var i = 0; i < arr1.length ; i++){
            sum += arr1[i] 
        }
        console.log(sum); //210

3.7:新增数组元素

3.7.1:push在数组后添加元素
        let arr3 = [1,2,3,4]
        arr3.push(5,6)
        console.log(arr3); //[1,2,3,4,5]
3.7.2:unshift在数组前添加元素
        arr3.unshift(-2,-1,0)
        console.log(arr3);//[-2,-1,0,1,2,3,4,5,6]

四、二维数组

4.1:二维数组指的是数组元素的值是一个一维数组

        var arr = [80,100,75]
        var arr1 = [
            [80,100,75],
            [90,67,66],
            [99,87,85],
        ]

4.2: 访问二维数组 

        console.log(arr1[0]); //80,100,75
        console.log(arr1[0][0]); //80

4.3:遍历二维数组arr1     

 for(var i=0;i<=arr1.length;i++){
            for(var a=0; a<arr1[i].length;a++){
                console.log(arr[i][a]);
            }
            console.log(arr1[i]);
        }

4.4:二维数组倒置

        var arr2=[
            ['a','b','c'],
            ['d','e','f'],
            ['g','h','i'],
            ['j','k','l'],
        ];

        var res=[
            [],
            [],
            [],
        ];

        for(var a=0;a<arr2.length;a++){
            
            for(var b=0;b<arr2[a].length;b++){
                res[b][a]=arr2[a][b]
            }

        }
        console.log(res);

五、数组迭代方法

5.1:map数组遍历器

map:利用某种规则映射得到一个新数组

表达式:
arr.map((元素,下标)=>{return 新元素})

如:

        let res1 = arr.map(function(value,index){
            // 回调函数中一定要return
            return value + 1 //让每个元素加1
        })
        console.log(res1);

5.2:filter数组过滤器

filter:用于筛选数组中满足条件的元素,返回筛选后的新数组

表达式:
arr.filter((value,index)=>{筛选条件})

如:

        let res1 = arr.filter((value,index)=>{
            return value >10
        })
        console.log(res1);

5.3:forEach数组遍历

 forEach:用于遍历数组,没有返回值,不需要return

表达式:
数组.forEach(function(vaule,index,arr){算法})

如:

        let sum1=0
        arr.forEach(function(value){
            sum1 +=value
        })
        console.log(sum1);

5.4:semo

some用于判断数组元素是否符合条件,只要有一个元素符合函数体的判断条件,就返回true,如果没有一个元素符合函数体的判断条件,就返回false。

表达式:
 let res = 数组.some((item,index)=>{条件})

如:

        let res = arr.some((item,index)=>{
            return item<0
        })
        console.log(res);

5.5:every

 当全部元素满足条件,every的值为true,反值为false。

表达式:
 let res = 数组.every((item)=>{条件})

如:

        let res = arr.every((item)=>{
            return item>0
        })
        console.log(res);

5.6:findIndex

findIndex用于返回第一个符合元素的下标

表达式:
 let res = 数组.findIndex((item)=>{条件})

如:

        let res = arr.findIndex((item)=>{
            return item>0
        })
        console.log(res);

5.7:reduce

reduce用于求数组内的元素和。

表达式: 
let res = 数组.reduce((item,index)=>item+index)

如:

 let res = arr.reduce((item,index)=>item+index)

总概:

                                                                                                                      ————来自微微老师

函数:JavaScript:函数-CSDN博客 

对象:JavaScript:对象-CSDN博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值