map,every,some的实现

75 阅读1分钟

map

map函数是数组的一个方法,其作用是遍历数组,并对数组中每一个元素进行处理,把处理的结果,返回一个新数组

const map = (array, fn) => {
  let results = []
  for (let value of array) {
    results.push(fn(value))
  }
  return results
}
let arr = [1,2,4]
arr = map(arr, v => v * v)

every

every是遍历数组,数组中每个元素都符合条件,返回true,否则返回false

const every = (array, fn) => {
  let result = true
  for (let value of array) {
    result = fn(value)
    if (!result) {
      break
    }
  }
  return result
}

some

some遍历数组,判断数组中元素是否符合条件,只要有一个符合就返回true,否则返回false

const some = (array, fn) => {
  let result = false
  for (let value of array) {
    result = fn(value)
    if (result) {
      break
    }
  }
  return result
}