DEV Community

Cristian Fernando
Cristian Fernando

Posted on

Paracetamol.js💊| #127: Explica este código JavaScript

¿Qué regresa por consola la siguiente función?

Dificultad: Avanzado

const formatearPrecio = ({ cantidad = 0, moneda = "USD", formato = "en-US", maxDecimales = 2}) => { return new Intl.NumberFormat(formato, { style: 'currency', currency: moneda, minimumFractionDigits: maxDecimales }).format(cantidad); } console.log(formatearPrecio({ cantidad: 3598, moneda: 'GBP', formato: 'en-GB', maxDecimales: 3 })); 
Enter fullscreen mode Exit fullscreen mode

A. undefiend
B. $3,598.0
C. £3,598.000
D. Uncaught TypeError: NumberFormat is not a function

Respuesta en el primer comentario.


Top comments (1)

Collapse
 
duxtech profile image
Cristian Fernando

Respuesta:
C. £3,598.000
JavaScript cuenta con un objeto para realizar formateo de valores numéricos de manera nativa.

Para lograrlo solo necesitamos usar el objeto Intl con su método NumberFormat y pasarle 2 parámetros: el formato monetario y un objeto de configuraciones.

¡También es posible formatear valores con unidades de medida y hasta con notación científica! Una verdadera chulada.

Más info sobre esta manera de formatear valores como siempre en la vieja confiable MDN, Intl.NumberFormat() constructor

img