1. filter()

都是数组方法,这个方法和forEach()的方法的区别又是什么呢?

2. 先说结论

filter() 和 forEach() 都是遍历数组的方法,甚至它们匿名函数的形参都是一样的,

而区别就在于 filter()是专门用来筛选数组内容的,

调用了filter()方法的之后,是需要接收一下的。

比如说拿一个新的变量来接受一下,或者拿原来那个调用了filter()方法的数组变量来接收一下

3. 直接上代码吧

点击查看代码
    var myArr = [1, 2, 3]
var newArr = myArr.filter(function(currentValue, index, array) {
return currentValue > 1
})
console.log(newArr);

这段代码的意思,就是筛选myArr数组里面大于1的元素,然后用一个新的变量来接受filter()返回的结果



结果就是这么简单。

实际上filter方法一遍只用写一个参数,

也就是默认的第一个参数当前循环数组的项currentValue,

上面的代码精简写法如下:

点击查看代码
    var newArr = myArr.filter(item => {
return item > 1
})
console.log(newArr);

同样的这里贴一个视频讲解地址:https://www.bilibili.com/video/BV1DY41177dM?p=40

最新文章

  1. WinForm 窗体属性 窗体美化
  2. Win7上安装Linux双系统
  3. git学习:忽略部分文件
  4. Tomcat双向Https验证搭建,亲自实现与主流浏览器、Android/iOS移动客户端超安全通信
  5. 跟着鸟哥学Linux系列笔记0-如何解决问题
  6. JavaScript初学者应注意的七个细节(转)
  7. Java基础知识强化之IO流笔记26:FileInputStream / FileOutputStream 复制mp4视频的案例
  8. openstack手动玩转
  9. 关于phpmyadmin中添加外键的做法
  10. Python的自学之路:Python基础(一)
  11. swift 之设计模式 适配器
  12. "《算法导论》之‘字符串’":字符串匹配
  13. 结合JDK源码看设计模式——迭代器模式
  14. 《Kubernetes权威指南》——运维技巧
  15. OpenGL编程-OpenGL框架-win32项目
  16. Top K算法
  17. trsd_extract_EDSD_new
  18. BZOJ2288:[POJ Challenge]生日礼物——题解
  19. 安装部署VMware vSphere 5.5文档 (6-6) 集群和vMotion
  20. myeclipse 快捷键,从步骤开始的大括号定位到匹配方法结束的大括号

热门文章

  1. thinkphp6+composer+无集成工具 配置php项目环境
  2. 如何通过使用vscode工具学习ts(typescript)
  3. js实现点击按钮或div显示与隐藏div
  4. mac上gitclone出现password: Permission denied, please try again.
  5. Android MD5加密、RSA加密
  6. LOOP GROUP BY 分组循环的使用方法小栗子
  7. anaconda在sys.path删除~/.local/lib
  8. JavaScript逗号运算符的用法
  9. HDLbits——Lfsr32
  10. msvc去除控制台窗口的编译指令