34-数组常用方法

  • 1. 如何清空数组
          let arr = [1, 2, 3, 4, 5];
          // 修改数组为空数组
          arr = [];
          // 将数组的长度设为0
          arr.length = 0;
          // 将数组从第0个数据删到最后一个数据
          arr.splice(0, arr.length);
    
          console.log(arr);
    



  • 2. 如何将数组转换为字符串
          let arr = [1, 2, 3, 4, 5];
          // 调用.toString()方法
          let str = arr.toString();
          console.log(str);  // 1,2,3,4,5
          console.log(typeof str);  // string
    



  • 3. 如何将数组转换成指定格式的字符串
          let arr = [1, 2, 3, 4, 5];
          // join方法默认情况下如果没有传递参数, 就是调用toString();
          // join方法如果传递了参数, 就会将参数作为元素和元素的连接符号
          let str = arr.join("+");
          console.log(str);  // 1+2+3+4+5
          console.log(typeof str);  // string
    



  • 4. 如何将两个数组拼接为一个数组
    • concat() 方法
      • 注意点: concat()方法不会修改原有的数组, 会生成一个新的数组返回给我们
          let arr1 = [1, 3, 5];
          let arr2 = [2, 4, 6];
          // 格式: 数组1.concat(数组2);
          let res = arr1.concat(arr2);
          console.log(res);  // [1, 3, 5, 2, 4, 6]
          console.log(typeof res);  // object
          // 注意点: concat()方法不会修改原有的数组, 会生成一个新的数组返回给我们
          console.log(arr1);
          console.log(arr2);
        
    • 扩展运算符
      • 注意点: 扩展运算符也不会修改原有的数组, 也会生成一个新的数组返回给我们
          let arr1 = [1, 3, 5];
          let arr2 = [2, 4, 6];
        
          // 注意点: 扩展运算符在解构赋值中(等号的左边)表示将剩余的据打包成一个新的数组
          //        扩展运算符在等号右边, 那么表示将数组中所有的数据解开, 放到所在的位置
          let res = [...arr1, ...arr2];   // let res = [1, 3, 5, 2, 4, 6];
          // 注意点: 扩展运算符也不会修改原有的数组, 也会生成一个新的数组返回给我们
          console.log(arr1);
          console.log(arr2);
        
    • 注意点: 数组不能使用加号进行拼接, 如果使用加号进行拼接, 会先转换成字符串再拼接
          let arr1 = [1, 3, 5];
          let arr2 = [2, 4, 6];
          // 注意点: 数组不能使用加号进行拼接, 如果使用加号进行拼接, 会先转换成字符串再拼接
          let res = arr1 + arr2;
          let res = arr1.concat(arr2);
          console.log(res);  // 1,3,52,4,6
          console.log(typeof res);  // string
      



  • 如何对数组中的内容进行反转
    • reverse() 方法
      • 注意点: 会修改原有数组
          let arr = [1, 2, 3, 4, 5];
          // [1, 2, 3, 4, 5]  [5, 4, 3, 2, 1]
          let res = arr.reverse();
          console.log(res);  // [5, 4, 3, 2, 1]
          // 注意点: 会修改原有数组
          console.log(arr);  // [5, 4, 3, 2, 1]
        



  • 如何截取数组中指定范围内容
    • slice() 方法
      • 特点: slice方法是包头不包尾(包含起始位置, 不包含结束的位置), 不会修改原有数组
          let arr = [1, 2, 3, 4, 5];
          //  0  1  2  3  4
          // [1, 2, 3, 4, 5]
          // slice方法是包头不包尾(包含起始位置, 不包含结束的位置)
          let res = arr.slice(1, 3);
          console.log(res);
          // slice()方法不会修改原有数组
          console.log(arr);
        



  • 如何查找元素在数组中的位置
    • indexOf() 方法
      • 参数1: 需要查找的元素
      • 参数2: 从什么位置开始查找
      • 注意点: indexOf方法默认就是从左至右的查找, 一旦找到就会立即停止查找
          //         0  1  2  3  4  5
          let arr = [1, 2, 3, 4, 5, 3];
        
          // indexOf方法如果找到了指定的元素, 就会返回元素对应的位置
          // 注意点: indexOf方法默认就是从左至右的查找, 一旦找到就会立即停止查找
          let res = arr.indexOf(3);
          console.log(res);  // 2
        
          // indexOf方法如果没找到指定的元素, 就会返回-1
          let res = arr.indexOf(6);
          console.log(res);  // -1
        
          // 参数1: 需要查找的元素
          // 参数2: 从什么位置开始查找
          let res = arr.indexOf(3, 4);
          console.log(res);  // 5
        
    • lastIndexOf()方法
      • 参数1: 需要查找的元素
      • 参数2: 从什么位置开始查找
      • 注意点: lastIndexOf()方法默认就是从右至左的查找, 一旦找到就会立即停止查找
          //         0  1  2  3  4  5
          let arr = [1, 2, 3, 4, 5, 3];
        
          // lastIndexOf方法如果找到了指定的元素, 就会返回元素对应的位置
          // 注意点: lastIndexOf方法默认就是从右至左的查找, 一旦找到就会立即停止查找
          let res = arr.lastIndexOf(3);
          console.log(res);  // 5
        
          // lastIndexOf方法如果没找到指定的元素, 就会返回-1
          let res = arr.lastIndexOf(6);
          console.log(res);  // -1
        
          // 参数1: 需要查找的元素
          // 参数2: 从什么位置开始查找
          let res = arr.lastIndexOf(3, 4);
          console.log(res);  // 2
        



  • 如何判断数组中是否包含某个元素
    • indexOf() 方法和lastIndexOf() 方法
          let arr = [1, 2, 3, 4, 4];
          // 我们可以通过indexOf和lastIndexOf的结果, 判断是否是-1即可, -1代表数组中不包含这个元素
          let res = arr.indexOf(8);
          // let res = arr.lastIndexOf(8);
          console.log(res);  // -1
      
    • includes() 方法
          let arr = [1, 2, 3, 4, 4];
          let res = arr.includes(8);
          console.log(res);  // false
           let res = arr.includes(4);
          console.log(res);  // true
      

你可能感兴趣的:(34-数组常用方法)