Recientemente me encontré con este código y me preguntaba si hay alguna diferencia entre escribir esos literales numéricos en JavaScript con o sin guiones bajos:
let number = 1234567890; console.log(number); let number2 = 123_4567_890; console.log(number2);Entonces, después de leer más, veo que ECMAScript 2021 tiene una nueva función llamada Separadores numéricos que se usa para números más grandes que son difíciles de leer sin separarlos.
Para mejorar la legibilidad, esta característica habilita guiones bajos como separadores en literales numéricos, como puede ver en el siguiente ejemplo para todo tipo de literales numéricos:
const readableMiliion = 1_000_000; const regularMiliion = 1000000; console.log(readableMiliion); console.log(regularMiliion); const decimal = 1_000_000.220_720; const binary = 0b01010110_00111000; const hexa = 0x40_76_38_6A_73; console.log(decimal); console.log(binary); console.log(hexa);Puede encontrar más información sobre los separadores numéricos aquí: https://v8.dev/features/numeric-separators
O aquí https://writingjavascript.com/what-are-numeric-separators
El objetivo de Numeric Seperatots es ayudar visualmente a los desarrolladores cuando se trata de números grandes. No cambian el código real o su significado.