JS - 用 for 循环实现常见的数组迭代方法

常见的数组迭代方法有很多种,比如 some, filter, map等等,底层也都可以用for来实现,我们来康一康。

some

1 const some = (arr, fn) => { 2 for (let i = 0; i < arr.length; i++) { 3 if (fn(arr[i], i, arr)) { 4 return true 5 } 6 } 7 return false 8 }

every

1 const every = (arr, fn) => { 2 let count = 0 3 const len = arr.length 4 for (let i = 0; i < len; i++) { 5 if (fn(arr[i], i, arr)) { 6 count++ 7 } 8 } 9 return count === len 10 }

filter

1 const filter = (arr, fn) => { 2 const res = [] 3 for (let i = 0; i < arr.length; i++) { 4 if (fn(arr[i], i, arr)) { 5 res.push(arr[i]) 6 } 7 } 8 return res 9 }

find

1 const find = (arr, fn) => { 2 for (let i = 0; i < arr.length; i++) { 3 if (fn(arr[i], i, arr)) { 4 return arr[i] 5 } 6 } 7 }

map

1 const map = (arr, fn) => { 2 const res = [] 3 for (let i = 0; i < arr.length; i++) { 4 res.push(fn(arr[i])) 5 } 6 return res 7 }

持续更新中...

点赞
收藏

评论区

加载中...

相关推荐

超详细的 JS 数组方法

数组是js中最常用到的数据集合,其内置的方法有很多,熟练掌握这些方法,可以有效的提高我们的工作效率,同时对我们的代码质量也是有很大影响。一、创建数组1.使用数组字面量表示法var arr4  ;   //创建一个空数组var arr5  20;   // 创建一个包含1项数据为20的数组var arr

js数组的遍历

js中数组的遍历1\.Map()方法Map映射的意思,可以看做是一个映射函数,所谓的映射。一个萝卜一个坑,一一对应的关系;语法:constarrArray();arr.map((item,index,arr)//函数体return;);//参数1:数组中的每一项(必选)//参数2:索引(可选)//参数3:当前遍历的数组本身(可选)//注

今天就来花一点时间整理一下算法吧!

算法,就是计算机处理信息的一个步骤。是独立存在的一种处理问题的方法和思想,并不局限于具体的实现过程。排序冒泡cpublicstaticintBubbleSort(intarr)for(inti0;i<arr.length;i)for(intj0;j<a

java 基础知识

遍历遍历就是把这个数组的每个元素显示出来遍历的方法就是先定义这个数组的大小,然后用FOR循环来完成数组,例如doublescorenewdouble5;ScannerinputnewScanner(System.in);for(inti0;i<score.l

这些JS工具函数够你用到2020年底了

前言活不多说,自己平时搜集的干货函数奉上。干货函数找出数字在数组中下一个相邻的元素let i  "";let rr  ;const name  (n, arr1)    let num  Number(n);    for (let i  0; i < arr1.length; i)         const elemen

Java开发者容易犯的十个错误

!(https://oscimg.oschina.net/oscnet/c9f00cc918684fbe8a865119d104090b.gif)Top1.数组转换为数组列表将数组转换为数组列表,开发者经常会这样做:\java\List<StringlistArrays.asList(arr);Arr