JavaScript 数组常用方法(二)

  1. 如何截取数组中指定范围内容
  2. 如何查找元素在数组中的位置
  3. 如何判断数组中是否包含某个元素
  4. 如何把字符串转换为数组

如何截取数组中指定范围内容

arr.slice(1, 3)

    let arr = [1, 3, 5, 7, 9];
    let res = arr.slice(1, 3);
    console.log(arr);   //[1, 3, 5, 7, 9]
    console.log(res);   //[3, 5];

slice注意点:
slice是包头不包尾的一个方法,意思就是他截取的时候,他只包含参数1,而不包含参数2;
slice 参数1 = 开始位置
slice 参数2 = 结束位置
slice 不改变原数组,而且会返回一个新数组

如何查找元素在数组中的位置

arr.indexOf()

如果indexOf查找到元素

    let arr = [1, 3, 5, 7, 9];
    let res = arr.indexOf(3);
    console.log(res);   //[1] 返回下标

如果indexOf没有查找到元素

    let arr = [1, 3, 5, 7, 9];
    let res = arr.indexOf(0);
    console.log(res);   //[-1] 返回下标

如果数组中有两个一样的数据,我想查找第二个(默认从左至右查找,找到就返回)

    let arr = [1, 3, 5, 7, 9, 3];
    let res = arr.indexOf(3);
    console.log(res);   //[1] 返回下标

而如果我一定要使用indexOf查找到第二个,那么则需要用到indexOf的第二个参数

    let arr = [1, 3, 5, 7, 9, 3];
    let res = arr.indexOf(3,2);
    console.log(res);   //[5] 返回下标

indexOf 注意点 :
indexOf 参数 :
indexOf 参数1 = 需要查找的元素
indexOf 参数1 = 从第几个下标开始找起
indexOf 返回值 :
indexOf 如果找到了元素 = 返回找到元素的下标
indexOf 如果没有找到元素 = 返回 - 1

 

arr.lastIndexOf()

    let arr = [1, 3, 5, 7, 9];
    let res = arr.lastIndexOf(3);
    console.log(res);   //[1] 返回下标

lastIndexOf 使用方法和注意点是indexOf一样 ,唯一区别就是:
indexOf 是从左往右开始查找
lastIndexOf 是从右往左开始查找

 

如何判断数组中是否包含某个元素

indexOf 和 lastIndexOf

    let arr = [1, 3, 5, 7, 9];
    let res = arr.indexOf(3);
    console.log(res);   // 1
    let arr = [1, 3, 5, 7, 9];
    let res = arr.lastIndexOf(3);
    console.log(res);   // 1
    let arr = [1, 3, 5, 7, 9];
    let res = arr.indexOf(0);
    console.log(res);    //-1
    let arr = [1, 3, 5, 7, 9];
    let res = arr.lastIndexOf(0);
    console.log(res);   //-1

使用 indexOflastIndexOf,查找数组,如果有该元素就返回 下标, 如果没有该元素就返回 -1

 

arr.includes()

    let arr = [1, 3, 5, 7, 9];
    let res = arr.includes(1);
    console.log(res);  //true
    let arr = [1, 3, 5, 7, 9];
    let res = arr.includes(0);
    console.log(res);  //fasle

使用 arr.includes()进行查找数组中是否有这个元素,如果有 ,返回true,如果没有.返回false

 

如何把字符串转换为数组

split()

    let str = "1,3,5,7,9";
    let arr = str.split(",");
    console.log(arr); //["1", "3", "5", "7", "9"]

split方法和join方法正好是相反的,split是把字符串转数组,join是把数组转字符串,两种方法都是通过参数来进行分割

发布了51 篇原创文章 · 获赞 0 · 访问量 2911

猜你喜欢

转载自blog.csdn.net/Spearmint_/article/details/102422054