3. 高阶函数-常用的高阶函数

12/17/2022 js

# 常用的高阶函数:

forEach、map、filter、every、some、find/findIndex、reduce、sort

# 实现map:

const map = (arr, fn) => {
  const result = []
  // for(let i in arr) {
  //   console.log('i', i)
  //   result.push(fn(arr[i]))
  // }
  for(let value of arr) {
    console.log('value', value)
    result.push(fn(value))
  }
  console.log('result', result)
  return result
}

const array = [1, 9, 3, 7, 5]
// 测试map
const newArr = map(array, function(item) {
  return item > 3
})
console.log('map结果', array, newArr)
// 测试map
const newArr1 = map(array, val => val * val)
console.log('map结果 ---', array, newArr1)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23

# 实现every:

const every = (arr, fn) => {
  let result = true
  for(var value of arr) {
    result = fn(value)
    if(!result) {
      break
    }
  }
  return result
}
const newArr2 = every(array, item => item > 2)
console.log('every结果 ---', array, newArr2)
1
2
3
4
5
6
7
8
9
10
11
12

# 实现some:

const some = (arr, fn) => {
  let result = false
  for(var value of arr) {
    result = fn(value)
    if(result) {
      break
    }
  }
  return result
}
const newArr3 = some(array, item => item % 2 === 0)
console.log('some结果 ---', array, newArr3)
1
2
3
4
5
6
7
8
9
10
11
12
最近更新时间: 2/4/2023, 10:01:08 AM
강남역 4번 출구
Plastic / Fallin` Dild