JavaScript之filter_动力节点Java学院整理


Posted in Javascript onJune 28, 2017

filter也是一个常用的操作,它用于把Array的某些元素过滤掉,然后返回剩下的元素。

和map()类似,Array的filter()也接收一个函数。和map()不同的是,filter()把传入的函数依次作用于每个元素,然后根据返回值是true还是false决定保留还是丢弃该元素。

例如,在一个Array中,删掉偶数,只保留奇数,可以这么写:

var arr = [1, 2, 4, 5, 6, 9, 10, 15];
var r = arr.filter(function (x) {
  return x % 2 !== 0;
});
r; // [1, 5, 9, 15]

把一个Array中的空字符串删掉,可以这么写:

var arr = ['A', '', 'B', null, undefined, 'C', ' '];
var r = arr.filter(function (s) {
  return s && s.trim(); // 注意:IE9以下的版本没有trim()方法
});
r; // ['A', 'B', 'C']

可见用filter()这个高阶函数,关键在于正确实现一个“筛选”函数。

练习

请尝试用filter()筛选出素数

Javascript 相关文章推荐
ext for eclipse插件安装方法
Apr 27 Javascript
20个非常有用的PHP类库 加速php开发
Jan 15 Javascript
js去字符串前后空格5种实现方法及比较
Apr 03 Javascript
使用bootstrap实现多窗口和拖动效果
Sep 22 Javascript
浅谈vue的踩坑路
Aug 31 Javascript
JSON 数据格式详解
Sep 13 Javascript
react 中父组件与子组件双向绑定问题
May 20 Javascript
vue 实现通过vuex 存储值 在不同界面使用
Nov 11 Javascript
js实现轮播图效果 z-index实现轮播图
Jan 17 Javascript
vue动态加载SVG文件并修改节点数据的操作代码
Aug 17 Javascript
vue 导出文件,携带请求头token操作
Sep 10 Javascript
Vue Element-ui表单校验规则实现
Jul 09 Vue.js
JavaScript高阶函数_动力节点Java学院整理
Jun 28 #Javascript
JavaScript之Date_动力节点Java学院整理
Jun 28 #Javascript
ES6深入理解之“let”能替代”var“吗?
Jun 28 #Javascript
jQuery、layer实现弹出层的打开、关闭功能
Jun 28 #jQuery
AngularJS实现单一页面内设置跳转路由的方法
Jun 28 #Javascript
JavaScript中常见的八个陷阱总结
Jun 28 #Javascript
通过构造函数实例化对象的方法
Jun 28 #Javascript
You might like
PHP下一个非常全面获取图象信息的函数
2008/11/20 PHP
解析php dirname()与__FILE__常量的应用
2013/06/24 PHP
PHP中strtr字符串替换用法详解
2014/11/26 PHP
php使用google地图应用实例
2014/12/31 PHP
PHP将页面中点击数量高的链接进行高亮显示的方法
2016/05/30 PHP
php接口技术实例详解
2016/12/07 PHP
详解Yii2高级版引入bootstrap.js的一个办法
2017/03/21 PHP
基于PHP的加载类操作以及其他两种魔术方法的应用实例
2017/08/28 PHP
[原创]IE view-source 无法查看看源码 JavaScript看网页源码
2009/07/19 Javascript
js实现的真正的iframe高度自适应(兼容IE,FF,Opera)
2010/03/07 Javascript
js实现字符串的16进制编码不加密
2014/04/25 Javascript
jQuery中:last选择器用法实例
2014/12/30 Javascript
jquery的ajax提交form表单的两种方法小结(推荐)
2016/05/25 Javascript
详解vue嵌套路由-params传递参数
2017/05/23 Javascript
详解在React里使用"Vuex"
2018/04/02 Javascript
微信小程序如何调用新闻接口实现列表循环
2019/07/02 Javascript
layui之table checkbox初始化时选中对应选项的方法
2019/09/02 Javascript
深入了解JavaScript词法作用域
2020/07/29 Javascript
在nuxt中使用路由重定向的实例
2020/11/06 Javascript
vue-cli 3如何使用vue-bootstrap-datetimepicker日期插件
2021/02/20 Vue.js
Python实现的监测服务器硬盘使用率脚本分享
2014/11/07 Python
Python实现的HTTP并发测试完整示例
2020/04/23 Python
python库matplotlib绘制坐标图
2019/10/18 Python
解决Python二维数组赋值问题
2019/11/28 Python
Python利用逻辑回归模型解决MNIST手写数字识别问题详解
2020/01/14 Python
后端开发使用pycharm的技巧(推荐)
2020/03/27 Python
汤米巴哈马官方网站:Tommy Bahama
2017/05/13 全球购物
美国领先的医疗警报服务:Philips Lifeline
2018/03/12 全球购物
盛大二次面试题
2016/11/18 面试题
汽车维修专业毕业生的求职信分享
2013/12/04 职场文书
兼职业务员岗位职责
2014/01/01 职场文书
《乌鸦和狐狸》教学反思
2014/02/08 职场文书
法人代表证明书
2014/09/18 职场文书
交通事故和解协议书
2014/09/25 职场文书
导游词之丹东鸭绿江
2019/10/24 职场文书
golang goroutine顺序输出方式
2021/04/29 Golang