Tengo que hacer una tarea que haga que un número se separe cada miles con comas y un máximo de 6 números después de 'punto' en js. Por ejemplo
12345678.1234567 -> 12,345,678.123457 (need to round) 12345678.1234533 -> 12,345,678.123453 12345678.12 -> 12,345,678.12 12345678.0 -> 12,345,678Probé con alguna cadena local y toFixed
Number(number.toFixed(6)).toLocaleString("en-US");pero siempre me enfrento a algunas excepciones y no sé cómo redondear después de un punto también. ¿Qué tengo que hacer?
Prueba Intl.NumberFormat()
const numbers = [12345678.0, 12345678.12, 12345678.123456, 12345678.1234567]; const f = new Intl.NumberFormat('en-US', { maximumFractionDigits: 6 }); numbers.forEach(n => console.log(f.format(n)));Puedes usar maximumFractionDigits
var number = 12345678.1234567; const formatted = number.toLocaleString("en", { minimumFractionDigits: 0, maximumFractionDigits: 6, }); console.log(formatted);