JS--数组的方法

查找

indexOf();从第一个值开始向后查找,返回第一个与查找内容相等数据的下标,如没找到返回-1;

lastIndexOf();从最后一个值往前查找,返回第一个与查找内容相等数据的下标,如没找到返回-1;

 

 新增

`数组名.push()` 在数组最后添加数据,可以添加多个值,用逗号分隔(常用)

`数组名.unshift()` 在数组的开始添加数据,可以添加多个值,用逗号分隔

删除

`数组名.pop()` 删除数组最后一个数据,在括号里添加内容无效,仍然删除最后一个数据

`数组名.shift() `删除数组第一个数据,在括号里添加内容无效,仍然删除第一个数据

`delete 数组名[下标];` 删除后会留下位置(不常用)

截取数据

  • 数组名.slice() 不会改变原数组;返回参数对应的数据;

    一个参数: 获取数组数据的起始下标,返回从起始下标到数组最后一个数据。

    两个参数:参数1:获取数组的起始下标;参数2:获取数组的结束下标。

    功能:返回参数1到参数2的数据。(不包含参数2下标的数据)

    注:

    1、如果出现负值,则数组长度与其相加再进行截取

    2、如果下标的数据不存在,则返回空数组,即[]

  • `数组名.splice()` **会改变原数组**,返回参数对应的数据(删除就返回删除的值,修改返回修改后的值,插入返回空数组);

    一个参数:把原数组截掉从该下标开始到最后的所有数据**(删除)**

    两个参数:参数1:起始下标;参数2:截取个数**(删除)**

    n个参数:参数1:起始下标;参数2:截取个数;参数3-n:修改添加的数据**(修改)**

    当参数2为0时,相当于在参数1下标之前插入数据**(插入)**

    **注:**括号里没有满足条件的内容,会返回[]

  •  转换

    字符串转数组:`字符串名.split('分隔符')`

  • let str ='123abc';
    let arr=str.split('');
    console.log(arr);//[ '1', '2', '3', 'a', 'b', 'c' ]

  • 数组转字符串:数组名.join('分隔符')
  • let arr=[2020,1,2];
    let str=arr.join('-');
    console.log(str);//2020-1-2

  • 拼接

  • 数组1.concat(数组2) 不改变原数组.
  • 数组去重

  • let arr = [1, 2, 2, 2, 3, 3,4, 3, 5, 5, 3];
    for (let i = 0; i < arr.length; i++) {
    if (arr.indexOf(arr[i]) != arr.lastIndexOf(arr[i])) {
    arr.splice(arr.lastIndexOf(arr[i]), 1);
    i--;//返回到当前下标再进行比较,直到没有重复的数据
    }
    }
    console.log(arr);

  • 快速清空数组

  • let arr = ["A", "B", "C", true, false];
    方法一,

  • arr.splice(0);

  • 方法二
  • arr = [];
  • 方法三
  • arr.length = 0;
posted @ 2021-03-09 18:49  伍阳  阅读(84)  评论(0)    收藏  举报