Foros del Web » Programando para Internet » Javascript »

duda Array

Estas en el tema de duda Array en el foro de Javascript en Foros del Web. Hola a todos, lo que necesito hacer es averiguar cuantas veceshay un numero en un array es decir Código: miArray = new Array() miArray[0] = ...
  #1 (permalink)  
Antiguo 29/11/2008, 16:58
 
Fecha de Ingreso: diciembre-2007
Mensajes: 274
Antigüedad: 16 años, 4 meses
Puntos: 0
duda Array

Hola a todos,

lo que necesito hacer es averiguar cuantas veceshay un numero en un array

es decir

Código:
miArray = new Array()
miArray[0] = 1
miArray[1] = 5
miArray[2] = 8
miArray[3] = 5
miArray[4] = 7
miArray[5] = 6
miArray[6] = 5
Lo que necesito es averiguar es cual es el numero que mas veces aparece en mi array y cuantas veces aparece.
  #2 (permalink)  
Antiguo 29/11/2008, 17:37
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: duda Array

Hola:

Habría que trabajarlo...

Código:
<html>
<head>
<title>
	http://www.caricatos.net/probador
</title>
<script>
Array.prototype.X = function() {
 valores = {};
 mayor = item = 0;
 for (i = 0, total = this.length;i < total; i ++)
  if (valores[this[i]]) valores[this[i]]++;
  else valores[this[i]] = 1;
  for (i in valores) if (valores[i] > mayor) {item = i; mayor = valores[i]};
 return [item, mayor];
}
miArray = new Array()
miArray[0] = 1
miArray[1] = 5
miArray[2] = 8
miArray[3] = 5
miArray[4] = 7
miArray[5] = 6
miArray[6] = 5;

window.onload = function() {r = miArray.X(); alert(r[0] + " aparece " + r[1] + " veces.")}
</script>
</head>
<body>

</body>
</html>
Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #3 (permalink)  
Antiguo 29/11/2008, 18:28
 
Fecha de Ingreso: diciembre-2007
Mensajes: 274
Antigüedad: 16 años, 4 meses
Puntos: 0
Respuesta: duda Array

mi cerebro es muy chiquito.

El codigo funciona perfecto, pero no entiendo algo, va mi cerebro no lo entiende. Vos pones

window.onload = function() {r = miArray.X(); alert(r[0] + " aparece " + r[1] + " veces.")}

Eso quiere decir que cada vez que se cargue la pagina.....

Bueno lo que pasa es que tengo esa funcion, dentro de otra funcion, es decir no la puedo llamar por un evento, ¿entonces como la llamo?

es decir

Cita:
function mifuncion(){
De aca quiero llamar a la funcion que me paste, pero no se como
}
Disculpen esas preguntas pero es que mucho no entendi el codigo.
  #4 (permalink)  
Antiguo 29/11/2008, 19:03
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: duda Array

Hola:

Lo que puse es tan solo un ejemplo... pero puede ponerse en cualquier otro sitio, y tan solo he añadido al tipo Array un método que devuelve un array de 2 elementos, el primero el valor que más se repite, y el segundo el número de veces que se repite...

Si tu array es "miArray", en cualquier tag puedes poner lo que parece en el onload....

<button onclick="r = miArray.X(); alert(r[0] + ' aparece ' + r[1] + ' veces.')">prueba</button>

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #5 (permalink)  
Antiguo 29/11/2008, 19:16
 
Fecha de Ingreso: diciembre-2007
Mensajes: 274
Antigüedad: 16 años, 4 meses
Puntos: 0
Respuesta: duda Array

No lo que quiero es activarla dentro de otra funcion no por un evento

mifuncion(){

function() {r = miArray.X(); alert(r[0] + " aparece " + r[1] + " veces.")}


}
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 19:38.