Un elemento de entrada contiene los números a en la que coma o un punto se utiliza como separador decimal y el espacio puede ser utilizado para miles de grupos como éste:Convert con punto o una coma como separador decimal a número en JavaScript
'1 , 2'
'110 000,23'
'100 1,23'
¿Cómo se podría convertirlos a un número flotante en el navegador usando JavaScript?
jQuery y jQuery UI se utilizan. Number(string)
devuelve NaN y parseFloat()
se detiene en el primer espacio o coma.
Esto ignora por completo el hecho de que ',' se usa a menudo como un separador de miles (agrupamiento). Si usas esto en un número como '1,000,000.00', obtienes' 1', lo que obviamente es completamente incorrecto. – Thor84no
@ Thor84no Supongamos que su código se ejecutará en la cultura EN, pero si los datos serán ingresados por personas que utilizan, por ejemplo, el idioma francés, danés, finlandés, checo, etc., no habrá confusión. Todo depende del uso del código – Zbynek
@Zbynek. No estoy suponiendo eso en absoluto. La mayoría, si no todos, los idiomas/regiones usan la agrupación de dígitos de alguna descripción. El carácter utilizado varía (por ejemplo, '[., ']'). Estoy señalando el hecho de que este código está ignorando una gran cantidad de entradas que lo harán incorrecto sin advertencia en la respuesta (y no hay manera de saber que ha sucedido). Incluso si los idiomas que lista no tendrán este problema que no niega el hecho de que en * muchos * * muchos * idiomas tendrá ese problema. Tenga en cuenta que se dividirá igualmente si el idioma en cuestión utiliza '.' como su carácter de agrupación de dígitos. – Thor84no