O método max () pegará um observável com todos os valores e retornará um observável com o valor máximo. Ele recebe uma função de comparação como argumento, o que é opcional.
Sintaxe
max(comparer_func?: number): Observable
Parâmetros
comparer_func- (opcional). Uma função que filtrará os valores a serem considerados para o valor máximo da fonte observável. Se não for fornecida, a função padrão será considerada.
Valor de retorno
O valor de retorno é um observável que terá o valor máximo.
Exemplo 1
O exemplo a seguir é com o valor máximo -
import { of } from 'rxjs';
import { max } from 'rxjs/operators';
let all_nums = of(1, 6, 15, 10, 58, 20, 40);
let final_val = all_nums.pipe(max());
final_val.subscribe(x => console.log("The Max value is "+x));
Resultado
The Max value is 58
Exemplo 2
O exemplo a seguir é o valor máximo com função de comparação -
import { from } from 'rxjs';
import { max } from 'rxjs/operators';
let list1 = [1, 6, 15, 10, 58, 2, 40];
let final_val = from(list1).pipe(max((a,b)=>a-b));
final_val.subscribe(x => console.log("The Max value is "+x));
Estamos usando matrizes e os valores dentro da matriz são comparados usando a função fornecida na função max, o valor máximo da matriz é retornado.
Resultado
The Max value is 58