Vi String(value).replace(/[^0-9.-]/g, '') de una biblioteca que describía filtrar caracteres ilegales, y finalmente devolverá el número legal. ¿Por qué funciona esto y qué será realmente reemplazado? Me siento confundido porque creo que nada será reemplazado.
Por ejemplo:
String("1.absd").replace(/[^0-9.-]/g, '') // '1.'String(value) hará una cadena a partir del valor. Entonces, si usa un número, esto lo convertirá en una cadena, porque la función reemplazar se define solo desde una cadena.replace(/[^0-9.-]/g, '') esto reemplazará cualquier expresión regular dada que coincida con una cadena vacía. En expresiones regulares tienes [^0-9.-]. El ^ al inicio significa que cualquier carácter que no sea de este intervalo coincidirá. Entonces, cualquier carácter que no sea número, punto o -. El modificador g después de la barra inclinada significa que esta expresión regular es global y se aplicará a todas las coincidenciasentonces desde "1.absd" los caracteres "absd" serán reemplazados con una cadena vacía