天天看點

ES6+ 數組方法

作者:不凡的小路丫

1 、concat() 數組、字元串合并。

let a = [1,2,3]
let b = [4,5,6]
a.concat(b) // [1, 2, 3, 4, 5, 6]

let c = 'hello '
let d = 'world'
c.concat(d) // 'hello world'           

2、 at() 數組、字元串、類數組中添加.at()方法at()支援正索引和負索引,擷取其指定位置的值。

let arr = [1,2,3,4,5,6]

arr.at(-1) // 6
arr.at(-2) // 5 

arr.at(0) // 1
arr.at(1) // 2           

3、includes() 判斷數組、字元串、類數組中是否包含某個值并傳回true或false

let arr = [1,2,3,4,5,6]

arr.includes(3) // true
arr.includes(7) // false
           

4、find() 常用與判斷數組中是否包含符合某種條件的值,并傳回第一個符合條件的值

let arr = [1,2,3,4,5,6,6,7,8,8]
let arr1 = arr.find((v, i) => {
    return v>5&&v<7;
})
// arr1 ===>> 6           

5、indexOf() 判斷數組、 字元串、 類數組中是否包含某個值并傳回第一個符合條件值的下标或者-1

let arr = [1,2,3,4,5,6]

arr.indexOf(3) // 2
arr.indexOf(8) // -1           

6、findIndex() 常用與判斷數組中是否包含符合某種條件的值,并傳回第一個符合條件值的下标或-1

let arr = [1,2,3,4,5,6,6,7,8,8]
let arr1 = arr.findIndex((v, i) => {
    return v>5&&v<7;
})
// arr1 ===>> 5           

7、map() 循環方法

let arr = [1,2,3,4,5]
arr.map((item,index)=>{
    console.log(item,index)
})
> 1 0
> 2 1
> 3 2
> 4 3
> 5 4


let arr1 = arr.map((item)=>{
  return item*3
})
// arr1 ===>> [3, 6, 9, 12, 15]           

8、filter() 過濾,過濾數組中所有符合條件的值并傳回數組。

let arr = [1,2,3,4,5,6,6,7,8,8];
let arr1 = arr.filter((v, i) => {
    return v>5&&v<7;
})
// arr1 ===>> [6,6]           

9、 some() 判斷數組中是否有符合條件的元素,傳回true或false

10、 every() 判斷數組中的每一個元素是否都符合條件,傳回true或false

let arr = [1,2,3,4,5,6,6,7,8,8];

let arr1 = arr.some((v, i) => {
    return v>7;
})
let arr2 = arr.every((v, i) => {
    return v>7;
})
// arr1 ===>> true
// arr2 ===>> false           

11、Object.keys(obj),Object.values(obj),Object.entries(obj) 主要是對象的處理。

let objList = {name:1,value:2,tagit:3}
let objKey = Object.keys(objList) 
// objKey ===>> ['name', 'value', 'tagit']
let objvalue = Object.values(objList)
// objvalue ===>> [1, 2, 3]
let objent = Object.entries(objList)
// objent ===>> [['name', 1],['value', 2],['tagit', 3]]
           

12、Array.from() 方法主要用于類數組對象、可周遊對象、甚至字元串 轉位真正的數組

let objList = {
 0:1,
 1:2,
 2:3,
 length: 3
}
Array.from(objList) // [1, 2, 3]
Array.from("helloworld") // ['h', 'e', 'l', 'l', 'o', 'w', 'o', 'r', 'l', 'd']           

13、Set數組對象: ES6 提供了新的資料結構 Set。它類似于數組,但是成員的值都是唯一的,沒有重複的值。

let arr = [1,2,3,4,5,6,6,7,8,8];
let setArr = new Set(arr); 
let arr2 = Array.from(setArr) 
// arr2 ===>> [1, 2, 3, 4, 5, 6, 7, 8]
注:這裡set傳回的是一個沒有重複的數組對象,我們可以用`Array.from()`或`[...set]`把它轉成數組
           

set對象的用法還有很多這裡為大家找到一個專門針對于set對象使用文章。