Rxjs - Operators - Last

Last和first一起,好理解了
但是,既然要最后一个符合条件的.那就是说.你的流要complete才知道结果

var source = Rx.Observable.range(0, 10).
last(
function (v, index, obs) { return v > 50 },
function (value, index) { return value * 10 })
.catch(e => {
return Rx.Observable.throw(e.name);
});

var subscription = source.subscribe(
function (x) {
console.log('Next: %s', x);
},
function (err) {
console.log('Error: %s', err);
},
function () {
console.log('Completed');
});

基本参数解读和first是一样的.
但这里会可能出现exception;

  • 在complete前都没出现符合条件的
  • 并且没有默认值

触发Error: EmptyError