Foros del Web » Programando para Internet » Javascript »

Sumar un array javascript

Estas en el tema de Sumar un array javascript en el foro de Javascript en Foros del Web. Buenas Tardes Agradeceria mucho de su ayuda necesito sumar un array de un input creado dinamicamente asi <?php while ($regTipoPago= mssql_fetch_array($conex->result)){ ?> <tr> <td height="26" ...
  #1 (permalink)  
Antiguo 23/05/2011, 16:03
Avatar de informacionsys  
Fecha de Ingreso: mayo-2011
Ubicación: Bogota D.C
Mensajes: 793
Antigüedad: 12 años, 11 meses
Puntos: 76
Sumar un array javascript

Buenas Tardes

Agradeceria mucho de su ayuda

necesito sumar un array de un input creado dinamicamente

asi

<?php
while ($regTipoPago= mssql_fetch_array($conex->result)){
?> <tr>
<td height="26" align="justify"><?php echo ucwords(strtolower($regTipoPago['nombre']));?></td>
<td align="center">
<input name="valorFormaPago[]" type="text" id="valorFormaPago[]" value="0" size="5"/>
</td>
</tr>
<?php
}
?>

Entonces esa consulta me muestra cinco registros ... ahora lo que quiero es sumar los valores que tenga el input ..... valorFormaPago... pero no se como hacerlo lo intente asi

opciones = document.getElementsByName("valorFormaPago");
for(var i=0; i<opciones.length; i++) {
//alert(opciones[i].value);
suma+=parseFloat(opciones[i].value);
document.getElementById("totCantidad").innerHTML=s uma;
}

pero no me sale.....


Gracias..
  #2 (permalink)  
Antiguo 24/05/2011, 00:45
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Respuesta: Sumar un array javascript

Hola:

En el nombre te faltan el juego de corchetes

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #3 (permalink)  
Antiguo 24/05/2011, 09:35
Avatar de informacionsys  
Fecha de Ingreso: mayo-2011
Ubicación: Bogota D.C
Mensajes: 793
Antigüedad: 12 años, 11 meses
Puntos: 76
Respuesta: Sumar un array javascript

Hola ... vale gracias .... pues ya lo intente pero no funciono .... de todas maneras ya encontre la solucion.... utiliize Ajax ....


Gracias ....
  #4 (permalink)  
Antiguo 24/05/2011, 09:50
Avatar de Aijoona
Colaborador
 
Fecha de Ingreso: mayo-2011
Ubicación: Buenos Aires
Mensajes: 779
Antigüedad: 12 años, 11 meses
Puntos: 343
Respuesta: Sumar un array javascript

Si queres sumar los valores de un array numerico:

Código Javascript:
Ver original
  1. var myValues = [1,2,3,4,5,6];
  2.  
  3. Math.sum.apply(Math, myValues); // 21
__________________
blog | @aijoona
  #5 (permalink)  
Antiguo 24/05/2011, 14:41
Avatar de Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 19 años, 10 meses
Puntos: 834
Respuesta: Sumar un array javascript

Hasta donde sé, sum no es un método nativo de Math
Una opción:
Código PHP:
<script type="text/javascript">
var 
esto= [1694];
var 
sum=(new Function("return " +esto.join('+')))();
alert(sum);
</script> 
  #6 (permalink)  
Antiguo 24/05/2011, 15:07
Avatar de Aijoona
Colaborador
 
Fecha de Ingreso: mayo-2011
Ubicación: Buenos Aires
Mensajes: 779
Antigüedad: 12 años, 11 meses
Puntos: 343
Respuesta: Sumar un array javascript

Whops, error de mi parte, esta en la implementación sobre la cual estoy trabajando en este momento.

Para estas cosas estaría bueno tener disponible el API de JavaScript 1.8 en todos los browsers:

Código Javascript:
Ver original
  1. [0,1,2,3,4].reduce(function(previousValue, currentValue, index, array){
  2.     return previousValue + currentValue;
  3. }); // 10
__________________
blog | @aijoona
  #7 (permalink)  
Antiguo 24/05/2011, 15:15
Avatar de Aijoona
Colaborador
 
Fecha de Ingreso: mayo-2011
Ubicación: Buenos Aires
Mensajes: 779
Antigüedad: 12 años, 11 meses
Puntos: 343
Respuesta: Sumar un array javascript

Implementación:

Código Javascript:
Ver original
  1. /**
  2.  * Suma los elementos de un array
  3.  *
  4.  * @author Aijoona
  5.  */
  6. Array.prototype.sum = function() {
  7.     if(Array.prototype.reduce) {
  8.         return this.reduce(function(a, b) {
  9.             return Number(a) + Number(b);
  10.         });
  11.     }
  12.  
  13.     var s = 0, a = this.concat();
  14.  
  15.     while(a.length) s += Number(a.shift());
  16.  
  17.     return s;
  18. };
  19.  
  20. [1,2,3,4,5].sum(); // 15
__________________
blog | @aijoona
  #8 (permalink)  
Antiguo 24/05/2011, 19:30
Avatar de informacionsys  
Fecha de Ingreso: mayo-2011
Ubicación: Bogota D.C
Mensajes: 793
Antigüedad: 12 años, 11 meses
Puntos: 76
Respuesta: Sumar un array javascript

hola gracias a todos..

Ya pude solucionarlo, implementando Ajax..

Les dejo la pagina .....


http://jetlogs.org/2007/06/17/jquery-tutorial-passing-input-arrays/

Gracias

  #9 (permalink)  
Antiguo 24/05/2011, 21:59
Avatar de Perr0  
Fecha de Ingreso: mayo-2005
Ubicación: Santiago de Chile, Chile
Mensajes: 676
Antigüedad: 18 años, 10 meses
Puntos: 79
Respuesta: Sumar un array javascript

hola, para mi toda operacion matematica es mejor aplicar ajax (calculando luego en php, asp, jsp o lo que sea menos js) o enviar a una pagina y que se ocupe el lenguaje del lado del servidor directamente ya que uno de los grandes problemas de javascript es la impresición de éste, se denota mas en raices, elevaciones, divisiones.

salu2

por ejemplo
http://www.etnassoft.com/2011/04/08/...en-javascript/
__________________
Numerador Mp3 en Access =)
http://www.mediafire.com/download/r9...pdw/mp3(2).zip
  #10 (permalink)  
Antiguo 24/05/2011, 22:25
Avatar de Aijoona
Colaborador
 
Fecha de Ingreso: mayo-2011
Ubicación: Buenos Aires
Mensajes: 779
Antigüedad: 12 años, 11 meses
Puntos: 343
Respuesta: Sumar un array javascript

Estás condicionando cualquier operación mátematica al server-side solamente?

De hecho en la entrada que posteas se puede leer claramente:

Cita:
Para acotar el margen de error, podemos confiar en que aquellas operaciones aritméticas cuyos operandos o resultados no excedan de 17 dígitos, se realizan correctamente.
Lo que propones es un desproposito en el 95% de las situaciones.
__________________
blog | @aijoona
  #11 (permalink)  
Antiguo 24/05/2011, 22:37
Avatar de Perr0  
Fecha de Ingreso: mayo-2005
Ubicación: Santiago de Chile, Chile
Mensajes: 676
Antigüedad: 18 años, 10 meses
Puntos: 79
Respuesta: Sumar un array javascript

un ejemplo de una simple raiz cúbica entre IE8 y FF, como decia en otro topic, se nos cayó FF por ese lado



salu2
__________________
Numerador Mp3 en Access =)
http://www.mediafire.com/download/r9...pdw/mp3(2).zip
  #12 (permalink)  
Antiguo 24/05/2011, 23:05
 
Fecha de Ingreso: noviembre-2005
Mensajes: 426
Antigüedad: 18 años, 5 meses
Puntos: 87
Respuesta: Sumar un array javascript

"una simple raiz cubica" lol.
Una suma o una resta no es ni ligeramente similar a una raiz cubica.
  #13 (permalink)  
Antiguo 25/05/2011, 07:14
Avatar de Aijoona
Colaborador
 
Fecha de Ingreso: mayo-2011
Ubicación: Buenos Aires
Mensajes: 779
Antigüedad: 12 años, 11 meses
Puntos: 343
Respuesta: Sumar un array javascript

De cuanto es el error? En el de raiz cubica de 125 es menos del 0.00000000000002%*. Que tan crítico te parece ese margen?


*
Código Javascript:
Ver original
  1. (((5 - Math.pow(125, 1/3)) * 100 ) / 5).toFixed(14) // "0.00000000000002"
__________________
blog | @aijoona
  #14 (permalink)  
Antiguo 25/05/2011, 07:32
Avatar de Perr0  
Fecha de Ingreso: mayo-2005
Ubicación: Santiago de Chile, Chile
Mensajes: 676
Antigüedad: 18 años, 10 meses
Puntos: 79
Respuesta: Sumar un array javascript

es cosa de gustos....mi no me da confianza...simple!!
__________________
Numerador Mp3 en Access =)
http://www.mediafire.com/download/r9...pdw/mp3(2).zip

Etiquetas: soporte-y-sugerencias
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 16:51.