Título: Pregunta: ¿Como pasar '27' a 27? (javascript) Publicado por: Leguim en 13 Septiembre 2020, 22:32 pm Estoy teniendo problemas, quiero validar del lado del cliente si un valor ingresado es un numero y si ese numero es un entero pero está este problema.
digamos que el dato es '27' o "27", las función que uso dirá que esto no es un entero, probé y la función que uso para saber si es un numero si funciona pero para saber si es un entero no funciona. Código
La solución que se me ocurre es ver si existe una función que convierta el "27" a 27 (int) con javascript. Título: Re: Pregunta: ¿Como pasar '27' a 27? (javascript) Publicado por: EdePC en 13 Septiembre 2020, 23:33 pm Number.isInteger(value) comprueba que value sea del tipo Integer
Para hacer la conversión de tipos rápida puedes usar: Código
- Nótese el + delante de value Título: Re: Pregunta: ¿Como pasar '27' a 27? (javascript) Publicado por: Leguim en 14 Septiembre 2020, 01:20 am Gracias! En un tema pasado me habían explicado eso del + (creo que fuiste vos) me había olvidado... Gracias!
Título: Re: Pregunta: ¿Como pasar '27' a 27? (javascript) Publicado por: @XSStringManolo en 14 Septiembre 2020, 01:24 am '27' es un string de tipo primitivo.
"27" es un string de tipo primitivo. "27".toString() es un string de tipo primitivo que de forma interna se convierte a tipo referenciado con autoboxing. Es decir para aplicarle el método, se convierte en un tipo referenciado/objeto String tal que puedes hacer manualmente con el constructor new String(27); Esto mismo se aplica a los números. Puedes tener el tipo primitivo 27, el tipo referenciado Number(27), muy similar a +" 27" creado por type cohercion y también tienes el parseInt("27") que tiene algunas diferencias. Para convertir a número entero, debes definir primero lo que es un numero entero. Porque puede ser un número entero matemáticamente. Puede ser un tipo entero que es una implementación concreta y especifíca de un lenguaje de programación sobre el concepto matemático con un tamaño de bytes predefinido, etc. También debes considerar como javascript trabaja con objetos para almacenar valores. Es { numero: 27 } un entero, un entero dentro de un objeto, una propiedad numérica dentro de un objeto? Es [27] un entero? Es un array? Es un entero dentro de un array? Es Number(27) un entero? Un objeto? Un entero dentro de un objeto? Es window.miNumero = 27 un entero? Un objeto? Una propiedad? Una variable? Es /27/ un entero? Un objeto? Una expresión regular? Es /d+/ un entero? Un trozo de un entero? Un objeto? Una expresión regular? Es 27.5212 un entero sin truncar? Un entero sin aproximar? Un flotante? Concluyendo, qué quieres detectar tú? Porque en base a tus necesidades/objetivos, tu concepción de lo que es un entero, la solución va a diferir. |