mirror of
				https://github.com/fooflington/selfdefined.git
				synced 2025-10-31 06:08:33 +00:00 
			
		
		
		
	
		
			
	
	
		
			34 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
		
		
			
		
	
	
			34 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
|   | import { Observable } from '../Observable'; | ||
|  | /** | ||
|  |  * The Max operator operates on an Observable that emits numbers (or items that can be compared with a provided function), | ||
|  |  * and when source Observable completes it emits a single item: the item with the largest value. | ||
|  |  * | ||
|  |  * <img src="./img/max.png" width="100%"> | ||
|  |  * | ||
|  |  * @example <caption>Get the maximal value of a series of numbers</caption> | ||
|  |  * Rx.Observable.of(5, 4, 7, 2, 8) | ||
|  |  *   .max() | ||
|  |  *   .subscribe(x => console.log(x)); // -> 8
 | ||
|  |  * | ||
|  |  * @example <caption>Use a comparer function to get the maximal item</caption> | ||
|  |  * interface Person { | ||
|  |  *   age: number, | ||
|  |  *   name: string | ||
|  |  * } | ||
|  |  * Observable.of<Person>({age: 7, name: 'Foo'}, | ||
|  |  *                       {age: 5, name: 'Bar'}, | ||
|  |  *                       {age: 9, name: 'Beer'}) | ||
|  |  *           .max<Person>((a: Person, b: Person) => a.age < b.age ? -1 : 1) | ||
|  |  *           .subscribe((x: Person) => console.log(x.name)); // -> 'Beer'
 | ||
|  |  * } | ||
|  |  * | ||
|  |  * @see {@link min} | ||
|  |  * | ||
|  |  * @param {Function} [comparer] - Optional comparer function that it will use instead of its default to compare the | ||
|  |  * value of two items. | ||
|  |  * @return {Observable} An Observable that emits item with the largest value. | ||
|  |  * @method max | ||
|  |  * @owner Observable | ||
|  |  */ | ||
|  | export declare function max<T>(this: Observable<T>, comparer?: (x: T, y: T) => number): Observable<T>; |