Fives Observable
by gladtocode
HTML
<body>
Values:
</body>
JavaScript
const print = (value) => {
const paragraph = document.createElement('p');
paragraph.innerHTML = value;
document.body.appendChild(paragraph);
}
const integerObservable = (observer) => {
let x = 0;
setInterval(
() => {
x = x + 1;
observer(x);
},
500
);
};
const multiplyOperator = (originalObservable, multiplier) => {
return function(observer) {
// Our internalObserver observes the original stream, and for each
// value emitted, we emit a corresponding value -- the original value
// multipled by the specified multplier
const internalObserver = (value) => observer(value * multiplier);
originalObservable(internalObserver);
}
}
const fivesObservable = multiplyOperator(integerObservable, 5);
fivesObservable(print);