[RxJS] Learn How To Use RxJS 5.5 Beta 2

The main changes is about how you import rxjs opreators from now on. And introduce lettable opreator.

复制代码
import { range } from 'rxjs/observable/range';
import { map, filter, scan } from 'rxjs/operators';

const source$ = range(0, 10);

source$.pipe(
  filter(x => x % 2 === 0),
  map(x => x + x),
  scan((acc, x) => acc + x, 0)
)
.subscribe(x => console.log(x))
复制代码

 

Build own opreator:

复制代码
import { interval } from 'rxjs/observable/interval';
import { map, take, toArray } from 'rxjs/operators';

/**
 * an operator that takes every Nth value
 */
const takeEveryNth = (n: number) => <T>(source: Observable<T>) =>
  new Observable(observer => {
    let count = 0;
    return source.subscribe({
      next(x) {
        if (count++ % n === 0) observer.next(x);
      },
      error(err) { observer.error(err); },
      complete() { observer.complete(); }
    })
  });


interval(1000).pipe(
  takeEveryNth(2),
  map(x => x + x),
  takeEveryNth(3),
  take(3),
  toArray()
)
.subscribe(x => console.log(x));
// [0, 12, 24]
复制代码

 

posted @   Zhentiw  阅读(247)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
历史上的今天:
2016-09-30 [Angular2 Router] CanActivate Route Guard - An Example of An Asynchronous Route Guard
2016-09-30 [Angular2 Router] CanDeactivate Route Guard - How To Confirm If The User Wants To Exit A Route
点击右上角即可分享
微信分享提示