Skip to content

Latest commit

 

History

History
121 lines (83 loc) · 3.02 KB

File metadata and controls

121 lines (83 loc) · 3.02 KB
description
Emite el elemento de menor valor

min

Signatura

Firma

min<T>(comparer?: (x: T, y: T) => number): MonoTypeOperatorFunction<T>

Parámetros

Retorna

MonoTypeOperatorFunction<T>: Un Observable que emite el elemento de menor valor.

Descripción

El operador max opera con Observables que emiten valores numéricos (o elementos que se puedan comparar mediante la función de comparación proporcionada), emitiendo un solo valor cuando el Observable fuente se completa: el elemento de menor valor.

Diagrama de canicas del operador min

Ejemplos

Obtener el valor máximo de una serie de números

StackBlitz

import { of } from "rxjs";
import { min } from "rxjs/operators";

const number$ = of(4, 7, 2, 10, 8, 9);

number$.pipe(min()).subscribe(console.log);
// Salida: 2

Utilizar una función de comparación para obtener la cadena más corta

StackBlitz

import { of } from "rxjs";
import { min } from "rxjs/operators";

const fruit$ = of("Cereza", "Arándano", "Fresa");

// Utilizar una función de comparación para obtener la cadena más corta
fruit$.pipe(min((a, b) => a.length - b.length)).subscribe(console.log);
// Salida: Fresa

Utilizar una función de comparación para comparar objetos anidados y obtener el de menor valor

StackBlitz

import { of } from "rxjs";
import { map, min } from "rxjs/operators";

const githubUser$ = of(
  { name: "zaldih", stats: { repositories: 23 } },
  { name: "NyaGarcia", stats: { repositories: 30 } },
  { name: "caballerog", stats: { repositories: 89 } },
  { name: "tonivj5", stats: { repositories: 51 } }
);

githubUser$
  .pipe(
    min((a, b) => a.stats.repositories - b.stats.repositories),
    map(({ name }) => name)
  )
  .subscribe(console.log);
// Salida: zaldih

Ejemplos de la documentación oficial

Obtener el mayor valor de una serie de números

import { of } from "rxjs";
import { min } from "rxjs/operators";

of(5, 4, 7, 2, 8)
  .pipe(min())
  .subscribe((x) => console.log(x)); // -> 2

Utilizar una función de comparación para obtener el elemento de menor valor

    import { of } from 'rxjs';
    import { min } from 'rxjs/operators';

    interface Person {
      age: number,
      name: string
    }
    of<Person>(
      {age: 7, name: 'Foo'},
      {age: 5, name: 'Bar'},
      {age: 9, name: 'Beer'},
    ).pipe(
      min<Person>( (a: Person, b: Person) => a.age < b.age ? -1 : 1),
    )
    .subscribe((x: Person) => console.log(x.name)); // -> 'Bar'

Recursos adicionales

Source code

Documentación oficial en inglés