[RxJS] Filtering operators: take, first, skip
2016-05-25 16:35
567 查看
There are more operators in the filtering category besides filter(). This lesson will teach how take(), first(), and skip() are simply operators to ignore or pass a certain amount of events from the source Observable.
take(number):
first():
skip(number): different with take(), it skip the first number of item, and show the rest:
take(number):
var foo = Rx.Observable.interval(100); /* --0--1--2--3--4--5--6--7- take(5) --0--1--2--3--4 */ var bar = foo.take(5); bar.subscribe( function (x) { console.log('next ' + x); }, function (err) { console.log('error ' + err); }, function () { console.log('done'); }, ); /** "next 0" "next 1" "next 2" "next 3" "next 4" "done" */
first():
var foo = Rx.Observable.interval(100); /* --0--1--2--3--4--5--6--7- first() --0 */ var bar = foo.first(); bar.subscribe( function (x) { console.log('next ' + x); }, function (err) { console.log('error ' + err); }, function () { console.log('done'); }, ); /** "next 0" "done" */
skip(number): different with take(), it skip the first number of item, and show the rest:
var foo = Rx.Observable.interval(100); /* --0--1--2--3--4--5--6--7 skip(5).take(3) -----------------5--6--7 */ var bar = foo.skip(5).take(3); bar.subscribe( function (x) { console.log('next ' + x); }, function (err) { console.log('error ' + err); }, function () { console.log('done'); }, ); /** "next 5" "next 6" "next 7" "done" */
相关文章推荐
- phaser.js入门篇
- js将本地时间与服务器时间同步
- js prototype介绍
- js every扩展
- [RxJS] Filtering operator: filter
- [JavaScript] 判断键盘同时按某些键时执行操作。
- 各个JSON技术的比较
- 在js里通过id控制表或div的隐藏和显示,以及把id前缀相同的div全部隐藏起来
- Retrofit + GSON处理JSON模板
- 读书笔记1---JavaScript词法结构
- js常见事件及案例-onFocus
- 将XML文件中的内容转换为Json对象
- javascript判断浏览器类型(咋个办呢 zgbn)
- js 将json字符串转换为json对象的方法解析
- 计算js程序段运行时间的类(还包括字符串连接的优化类)(咋个办呢 zgbn)
- director.js教程
- [2.1]Spark DataFrame操作(一)之读取并过滤json文件
- sso跨域写cookie的一段js脚本(推荐)
- 用fasterjson需要注意的地方
- 用fasterjson需要注意的地方