zoukankan      html  css  js  c++  java
  • [RxJS] Creation operators: interval and timer

    It is quite common to need an Observable that ticks periodically, for instance every second or every 100 miliseconds. We will learn about operators interval() and timer(), both of which are similar to setInterval() in JavaScript.

    Interval(period):

    You can create interval() function by you own:

    var foo = Rx.Observable.create( function(Observe){
      var i = 0;
      setInterval(function(){
        Observe.next(i);
        i++;
      }, 1000);
    })
    
    foo.subscribe(function (x) {
      console.log('next ' + x);
    }, function (err) {
      console.log('error ' + err);
    }, function () {
      console.log('done');
    });

    Or:

    var foo = Rx.Observable.interval(1000);
    
    foo.subscribe(function (x) {
      console.log('next ' + x);
    }, function (err) {
      console.log('error ' + err);
    }, function () {
      console.log('done');
    });

    timer(delay/date, period):

    var foo = Rx.Observable.timer(3000, 1000); // after 3 second delay
    var date = new Date(new Date().getTime() + 3000);
    var foo = Rx.Observable.timer(date, 1000); // accept a date object
    
    foo.subscribe(function (x) {
      console.log('next ' + x);
    }, function (err) {
      console.log('error ' + err);
    }, function () {
      console.log('done');
    });
  • 相关阅读:
    《架构之美》读后感(二)
    《架构之美》读后感(一)
    《代码大全2》阅读笔记03
    《代码大全2》阅读笔记02
    《代码大全2》阅读笔记01
    学习进度报告(十四)
    软件方法阅读笔记03
    第二讲
    1.26 十讲第一讲
    1.23
  • 原文地址:https://www.cnblogs.com/Answer1215/p/5401372.html
Copyright © 2011-2022 走看看