from

RxJS 5 from

by Echyzen

HTML

<script src="https://cdnjs.cloudflare.com/ajax/libs/rxjs/6.2.1/rxjs.umd.js"></script>
<script src="https://rawgit.com/eu81273/jsfiddle-console/master/console.js"></script>

JavaScript

function exclude(predicate) {
  return rxjs.Observable.create(subscriber => {
    let source = this;
    return source.subscribe(value => {
      try {
        if(!predicate(value)) {
          subscriber.next(value)
        }
      } catch(err) {
        subscriber.error(value)
      }
    },
    err => subscriber.error(err),
    () => { if(subscriber.complete) subscriber.complete()})
  })
}
   
rxjs.Observable.prototype.exclude = exclude
   
const even = (value) => (value % 2 === 0)
   
rxjs.from([1,2,3,4,5])
  .exclude(even)
 	.subscribe((el) => console.log(el))