mirror of
				https://github.com/fooflington/selfdefined.git
				synced 2025-10-31 06:08:33 +00:00 
			
		
		
		
	
		
			
	
	
		
			40 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
		
		
			
		
	
	
			40 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
|   | "use strict"; | ||
|  | var map_1 = require('../operators/map'); | ||
|  | /** | ||
|  |  * Applies a given `project` function to each value emitted by the source | ||
|  |  * Observable, and emits the resulting values as an Observable. | ||
|  |  * | ||
|  |  * <span class="informal">Like [Array.prototype.map()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map),
 | ||
|  |  * it passes each source value through a transformation function to get | ||
|  |  * corresponding output values.</span> | ||
|  |  * | ||
|  |  * <img src="./img/map.png" width="100%"> | ||
|  |  * | ||
|  |  * Similar to the well known `Array.prototype.map` function, this operator | ||
|  |  * applies a projection to each value and emits that projection in the output | ||
|  |  * Observable. | ||
|  |  * | ||
|  |  * @example <caption>Map every click to the clientX position of that click</caption> | ||
|  |  * var clicks = Rx.Observable.fromEvent(document, 'click'); | ||
|  |  * var positions = clicks.map(ev => ev.clientX); | ||
|  |  * positions.subscribe(x => console.log(x)); | ||
|  |  * | ||
|  |  * @see {@link mapTo} | ||
|  |  * @see {@link pluck} | ||
|  |  * | ||
|  |  * @param {function(value: T, index: number): R} project The function to apply | ||
|  |  * to each `value` emitted by the source Observable. The `index` parameter is | ||
|  |  * the number `i` for the i-th emission that has happened since the | ||
|  |  * subscription, starting from the number `0`. | ||
|  |  * @param {any} [thisArg] An optional argument to define what `this` is in the | ||
|  |  * `project` function. | ||
|  |  * @return {Observable<R>} An Observable that emits the values from the source | ||
|  |  * Observable transformed by the given `project` function. | ||
|  |  * @method map | ||
|  |  * @owner Observable | ||
|  |  */ | ||
|  | function map(project, thisArg) { | ||
|  |     return map_1.map(project, thisArg)(this); | ||
|  | } | ||
|  | exports.map = map; | ||
|  | //# sourceMappingURL=map.js.map
 |