Foros del Web » Programando para Internet » Javascript »

recuperar signo negativo de un número

Estas en el tema de recuperar signo negativo de un número en el foro de Javascript en Foros del Web. Hola buenas noches, estoy intentando recuperar el signo negativo de una suma, lo tengo puesto de esta forma cantidad12=(Math.floor(formulario['valo1'].value) * Math.floor(formulario['valor2'].value)); //de esta forma son ...
  #1 (permalink)  
Antiguo 29/05/2008, 19:18
 
Fecha de Ingreso: febrero-2002
Ubicación: Navarra
Mensajes: 701
Antigüedad: 22 años, 3 meses
Puntos: 2
recuperar signo negativo de un número

Hola buenas noches, estoy intentando recuperar el signo negativo de una suma, lo tengo puesto de esta forma

cantidad12=(Math.floor(formulario['valo1'].value) * Math.floor(formulario['valor2'].value));
//de esta forma son los demás valores

total=(Math.floor(formulario['cantidad1'].value) - (cantidad12 + cantidad13 + cantidad14 + cantidad15));

totalsigno=total.substring(0,1);

Aqui me da el error, no se el motivo, si le pongo el valor de total="-12345"; entonces si me recupera el negativo

Lo que quiero hacer con esto es un condicional if (totalsigno == "-") { echo "corecto" }

alguien sabe como se podría hacer?

saludos
__________________
asp, php, .net, adaptandose a las necesidades
  #2 (permalink)  
Antiguo 30/05/2008, 00:53
Avatar de KarlanKas
Moderador extraterrestre
 
Fecha de Ingreso: diciembre-2001
Ubicación: Madrid
Mensajes: 6.987
Antigüedad: 22 años, 4 meses
Puntos: 61
Respuesta: recuperar signo negativo de un número

Prueba a poner:

if (total<0) { echo "corecto" }

Te sale error porque estás intentando manejar un número como si fuera un texto. Podrías hacer:

totalsigno=String(total).substring(0,1);

Pero creo que lo que te propongo es mucho más sencillo.
__________________
Cómo escribir

No hay pregunta tonta, sino tonto que quiere seguir en la ignorancia.
  #3 (permalink)  
Antiguo 30/05/2008, 01:03
Avatar de Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 20 años
Puntos: 834
Respuesta: recuperar signo negativo de un número

Si queré saber el signo de un número, bastaría con comprobar si es o no menor que 0 -if(algo<0)...-. El error se produce porque querés usar un método de String en un número. Si de todas formas querés usarlo, deberías convertirlo a cadena antes.
Fijate en esto:
Código PHP:
<script>
n=-10;
if(
n<0)alert('negativo');else alert('positivo');//devuelve negativo
try{signo=n.substring(0,1);alert(signo);}catch(e){alert(e.message);}//devuelve error
alert(n.toString().substring(0,1));//devuelve -
</script> 
  #4 (permalink)  
Antiguo 30/05/2008, 01:04
Avatar de Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 20 años
Puntos: 834
Respuesta: recuperar signo negativo de un número

Ups, nos chocamos amigo alienígena!
  #5 (permalink)  
Antiguo 30/05/2008, 01:07
Avatar de KarlanKas
Moderador extraterrestre
 
Fecha de Ingreso: diciembre-2001
Ubicación: Madrid
Mensajes: 6.987
Antigüedad: 22 años, 4 meses
Puntos: 61
Respuesta: recuperar signo negativo de un número

Pero no viste mi intermitente!!??

Je! Muy buenas don Panino!! Un placer chocar con usted!
__________________
Cómo escribir

No hay pregunta tonta, sino tonto que quiere seguir en la ignorancia.
  #6 (permalink)  
Antiguo 30/05/2008, 08:36
 
Fecha de Ingreso: febrero-2002
Ubicación: Navarra
Mensajes: 701
Antigüedad: 22 años, 3 meses
Puntos: 2
Respuesta: recuperar signo negativo de un número

Juer, jeje, es verdad, no había caído, estaba como tonto intentando sacar el negativo, sin darme cuenta de lo que comentáis de si es menor de cero, jeje, si es que algunas noches es mejor irse a dormir antes, jejeje

Muchas gracias por responder
Un saludo
__________________
asp, php, .net, adaptandose a las necesidades
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:08.