JavaScript--Day05(数组)

一、数组的遍历

        利用for循环进行遍历

数组遍历的唯一真理

var arr = [1,3,5,8,6,7,6];
for(var i = 0;i < arr.length;i++){
    console.log(arr[i]);
}

二、多维数组

1、二维数组

        访问二维数组,先访问第一个,再访问第二个 类似于在一个小区,先找第几栋楼再找第几层。

var arr1 = [[1, 2, 3],['5', '6', '7']];
for (var i = 0; i < arr1.length; i++) {
    for (var j = 0; j < arr1[i].length; j++) {
        console.log(arr1[i][j]);
        }
}

2、多维数组

        跟二维数组一样,在一个小区,先找第几栋楼再找第几层,在楼层里去找哪户房间号,再去找房子里的具体的人

var arr = [[1, [9, 5, 4], 3],["a", "b", "c"]];
console.log(arr[0][1][0]);

三、栈方法和队列方法

        栈方法  先进后出     队列方法 先进先出

1、push 末尾添加元素

        在元素的末尾的位置添加,需要几个就可以添加几个

参数

需要添加的元素、可以写多个

返回值

会返回一个添加完之后的数组的长度,之间使用逗号分隔
会不会改变

会改变原本的数组

var arr = [1, 2, 3, 4, 5];
arr.push('溜溜溜', '嘁嘁嘁', '叭叭叭');
console.log(arr);

2、pop 末尾删除元素

        删除末尾位置的一个元素

参数

不需要参数

返回值

返回删除的元素

会不会改变

会改变原本的数组

var arr = [1, 2, 3, 4, 5];
arr.pop();
console.log(arr);

3、unshift 头部添加元素

        在元素的头部的位置添加,需要几个就可以添加几个

参数

需要添加的元素  可以写多个,之间使用逗号分隔

返回值

会返回一个添加完之后的数组的长度

会不会改变

会改变原本的数组

var arr = [1, 2, 3, 4, 5];
arr.unshift('咯咯咯');
console.log(arr);

4、shift 头部删除元素

        删除头部的位置的一个元素

参数

不需要参数

返回值

返回删除的元素

会不会改变

会改变原本的数组

var arr = [1, 2, 3, 4, 5];
arr.shift();
console.log(arr);

四、数组的检索方法

1、includes

        用于 查找 是否包含某个元素 返回 布尔值  采用的是全等于。如果超过最大的索引下标那么不会在检索了  -1 表示 为最后一个元素。如果 arr.length + 查询的开始位置的数字   为 负数 那么就会从头开始检索

参数

1.需要查找的元素   2.从哪个位置开始查找 索引下标

返回值

布尔值 是否找到的结果

会不会改变

不会改变原本的数组

var arr = [1, 2, 3, 4, 1];
console.log(arr.includes(9)); // false 没有找到 
console.log(arr.includes(1, -99)); // true 找到了
console.log(arr.includes('1')); //false 没有找到

2、indexOf

        用于 查找 是否包含某个元素 返回 索引下标  第一次出现的位置 采用的是全等于。如果超过最大的索引下标那么不会在检索了  -1 表示 为最后一个元素

参数

1.需要查找的元素  2从哪个位置开始查找 索引下标

返回值

索引下标  没有找到返回 -1

会不会改变

不会改变原本的数组

var arr = [1, 2, 3, 4, 1];
console.log(arr.indexOf(99)); // -1 没有找到
console.log(arr.indexOf(1, 1));// 4

五、数组转字符串

1、join

        数组转字符串 将数组里面的每一个元素分别拿出来 拼接到一个字符串中

参数

更像是每一个元素的分隔符,可以自定义分隔符

返回值

返回有内容组成的字符串

会不会改变

不会改变原本的数组

var arr = ['a', 'b', 'c'];
var str = arr.join('*');
console.log(str);

2、toString

        数组转字符串,跟join作用一样

参数

更像是每一个元素的分隔符,默认逗号进行分隔

返回值

返回有内容组成的字符串

会不会改变

不会改变原本的数组

var arr = ['a', 'b', 'c'];
var str = arr.toString();
console.log(str);

六、其他操作方法

1、isArray

判断传入的是否是一个数组

参数

就是需要检测的变量

返回值

布尔值 是否是一个数组

会不会改变

不会改变原本的数组

var arr = [1, 2, 3];
console.log(Array.isArray(arr));

2、splice

        增、删、改

参数

参数1 需要增加删除修改的起始位置(必须)会到哪个地方

参数2 是需要删除的个数(可选)

参数3 增加的元素(可选)

返回值

返回被修改的内容

会不会改变

会改变原本的数组

var arr = [1, 2, 3];
arr.splice(2,0,'你好');
arr.splice(1,2);//删
arr.splice(2, 3, '三', '四', '五');//改

3、slice

        截取数组

1.如果参数只有开始没有结束 那么会从开始一直到最后

2.如果参数值只有一个0 那么会把数组原封不动的打印一遍

参数

开始到结束 (不包含结束位置)

返回值

截取出来的数组

会不会改变

不会改变原数组

var arr2 = [9,8,7,6,5,4,3];
console.log(arr2.slice(1,-2));

4、reverse

        颠倒数组

参数

不需要参数

返回值

返回颠倒之后的数组

会不会改变

会改变原数组

var arr3 = [9,8,7,6,5,4,3];
console.log(arr3.reverse());

5、concat

        合并多个数组 将参数里面的数组合并到当前数组中

参数

需要进行合并的数组

返回值

返回合并之后的数组

会不会改变

不会改变原数组

  • 5
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值