06数组拓展-es6
# 数组拓展
//Array.from() 把类数组转化成数组
function fn(){
console.log(Array.from(arguments))
}
fn(1,2,3)
//Array.of 将一组值,转换为数组
console.log(Array.of(3, 11, 8)) // [3,11,8]
//find() 找出第一个符合条件的数组成员
let arr = [1,2,3,4,5]
let newArr = arr.find(function(item){
return item % 2 === 0
})
console.log(newArr)//2
//findIndex() 找出第一个符合条件的数组成员的索引值
let arr = [1,2,3,4,5]
let newArr = arr.findIndex(function(item){
return item % 2 === 0
})
console.log(newArr)//1
//fill() 填充数组
console.log(['a', 'b', 'c'].fill(7))//[7, 7, 7]
console.log([,,,].fill(6))//[6,6,6]
//flat() 数组扁平化
let arr = [['name', '小明'], ['age', 18], ['sex', '男']]
console.log(arr.flat(1))//["name","小明","age",18,"sex","男"]
let arr = [1,2,[3,4,[5,6]]]
console.log(arr.flat(Infinity))//永远变成1维数组
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
[!cogs]
%accordion% 把类数组转化成数组 %accordion%
function fn() {
console.log([...arguments]); //[1, 2, 3]
// console.log(Array.from(arguments)); //[1, 2, 3]
}
fn(1, 2, 3)
//Array.of 将一组值,转换为数组
console.log(Array.of(3, 11, 8)) // [3,11,8]
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
//find() 找出第一个符合条件的数组成员
let arr = [1, 2, 3, 4, 5]
let newArr = arr.find(function (item) {
return item % 2 === 0
})
console.log(newArr)//2
1
2
3
4
5
6
2
3
4
5
6
%/accordion%
# 数组扁平化✨
//flat() 数组扁平化
let arr = [
['name', '小明'],
['age', 18],
['sex', '男']
]
console.log(arr.flat(1)) //["name","小明","age",18,"sex","男"]
//flat() 数组扁平化
//Infinity永远都是一维
let arr = [
[1, 2, [3, 4, [5, 6]]]
]
console.log(arr.flat(Infinity)) //[1, 2, 3, 4, 5, 6]
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2
3
4
5
6
7
8
9
10
11
12
13
14
15
编辑 (opens new window)
上次更新: 2022/04/24, 13:33:34