学习js的第十天

本文介绍了JavaScript中数组的一系列操作方法,包括栈方法(push、pop)、队列方法(unshift、shift)、反转数组的reverse方法、排序的sort方法、截取数组的splice方法、拼接数组的concat方法、数组转字符串的join方法以及获取元素索引的indexOf和lastIndexOf方法。这些方法分别用于添加、删除、修改和查找数组元素,以及对数组进行排序和组合。
摘要由CSDN通过智能技术生成

学习目标:

         数组的方法

数组.方法名();

1.原数组发生变化

2.原数组不变 给到的结果是一个新的数组


第一部分:

栈方法 先进后出 后进先出 电梯 操作的是数组的结尾

  • push();

 语法: 数组名.push(数据);

​ 作用: 数组的末尾追加数据

​ 返回值: 追加数据以后 数组最新的长度

  •  pop();

​ 语法: 数组名.pop(); // 括号中不用写数据

​ 作用: 删除数组的最后一个数据

​ 返回值:被删除的数据

​ 队列方法 先进先出 管道 操作的是数组的开头

  • unshift();

​ 语法: 数组名.unshift(数据);

​ 作用: 数组的开头追加数据

​ 返回值: 追加数据以后 数组最新的长度

  • ​ shift();

语法: 数组名.shift(); // 括号中什么也不写

​ 作用: 删除数组的第一个数据

​ 返回值:被删除的数据


第二部分:

                反转数组

  • ​ reverse();

​ 语法:数组.reverse();

​ 作用: 反转数组. 反转 仅仅是倒过来 不排序

​ 返回值:反转以后的数组; 原数组发生变化

                排序

  • ​ sort();

​ 语法: 数组.sort();

​ 作用: 对数组内的数据进行排序

​ 返回值: 排序后的数组 原数组发生变化

​ 一个方法默认对字母进行排序 同时 又能排序数字

​ 结果不如我们所愿 排序数字的时候 可能不准确

​ 为了保证准确 我们需要手动干预

​ 干预的方式就是传一个匿名函数

​ 语法:

​ 数组.sort(function(a,b){return a-b}); 升序

​ 数组.sort(function(a,b){return b-a}); 降序

​ 数组.sort(function(a,b){if(a>b){return 1}else{return -1}})

​ 数组.sort(function(a,b){if(a<b){return 1}else{return -1}})

​ 以后开发如果你不想单独写排序方法,可以采用sort();

​ 但是排序的是数字,必须手动干预 .

                 截取数组

  • splice();

  1. ​ 数组的增

    ​ 数组.splice(开始的索引,0,插入的数据1,数据2,...数据n);

    ​ 截取0个放入一个或者多个

  2. ​ 数组的删

    ​ 数组.splice(开始的索引,多少个);

    ​ 截取多个 不放里插入

  3. ​ 数组的改

    ​ 数组.splice(开始的索引,多少个,插入的数据1,数据2,数据n);

    ​ 截取多少个 插入多少个

第三部分:

​ 前两部分 直接改变原数组

​ 第三部分 结果会放到一个新的数组中 不会影响原数组

  •   concat();                         

​ 语法: 原数组.concat(数组1,数组2,数组3,数据1);

​ 作用: 进行数组拼接,将参数的所有数组或者数据 都拼接在原始数组身上

​ 返回值: 拼接好的数组

​ 语法: 原数组.concat(数组1,数组2,数组3,数据1);

​ 作用: 进行数组拼接,将参数的所有数组或者数据 都拼接在原始数组身上

​ 返回值: 拼接好的数组

数组转字符串的方法

  • join();

​ 语法:数组.join('连接符');

​ 作用: 使用连接符将数组内的每个元素 连接成一个字符串 (不写连接符 默认用逗号)

​ 返回值:连接好的字符串

  • slice();

语法: 数组.slice(开始索引,结束索引); //[1,10] 1<=x<=10 (1,10) 1<x<10

// [1,10) 1<=x<10

参数的特点:

​ 1:左闭右开 包含开始索引 不包含结束索引

​ 2:开始索引不写 默认开始索引为0 结束索引不写 默认为length

  1. 可以是负数 表示倒数第几个 等同于 length+负数

    [1,2,3]

    从左到右 0 1 2

    从右往左 -3 -2 -1

作用: 截取数组的部分内容

返回值: 截取后的新数组

和 splice 的区别:

  	1. 是否改变元数组
   		1. splice 改变原数组
   		2. slice 不改变原数组 
  	2. 参数
   		1.  splice(开始的位置,多少个)
   		2. slice(开始的索引,结束的索引)
  • indexOf()

语法: 数组.indexOf('数据');

​ 数组.indexOf('数据',开始的索引);

作用:

​ 从左往右 检索该数据第一次出现在数组中的位置

返回值:

​ 如果数组中 有这个数据 那么返回该数据第一次出现的索引位置

​ 如果数组中没有这个数据 那么返回 -1

  • lastIndexOf()

语法: 数组.lastIndexOf('数据');

​ 数组.lastIndexOf('数据',开始的索引);

作用:

​ 从右往左 检索该数据第一次出现在数组中的位置

返回值:

​ 如果数组中 有这个数据 那么返回该数据第一次出现的索引位置

​ 如果数组中没有这个数据 那么返回 -1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值