Foros del Web » Programando para Internet » Javascript »

Bucle For

Estas en el tema de Bucle For en el foro de Javascript en Foros del Web. Muy buenas, Quería haceros una consulta, ya que estoy provando una cosa y no me da resultado. Mi duda es si en JavaScript es posible ...
  #1 (permalink)  
Antiguo 03/01/2010, 18:35
 
Fecha de Ingreso: diciembre-2009
Mensajes: 4
Antigüedad: 14 años, 4 meses
Puntos: 0
Bucle For

Muy buenas,

Quería haceros una consulta, ya que estoy provando una cosa y no me da resultado.
Mi duda es si en JavaScript es posible hacer un bucle For en donde el valor inicial, el incremento y la repetición sean letras en vez de numeros. Por ejemplo:

for (letra='a'; letra<='z'; letra++)

Lo he estado probando pero no me funciona. Sabéis si hago algo mal o no es posible hacerlo?

Saludos y gracias.
  #2 (permalink)  
Antiguo 03/01/2010, 19:02
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: Bucle For

se puede, pero no de la misma forma que otros lenguajes. creo que en php se puede. en todo caso, al tratarse de un string, javascript no tiene soporte para iterar por string de forma nativa. lo que necesitas es obtener el charCode de la letra, sumarle uno al charCode y luego convertirlo a string.
Código:
for(var letra = 'a'; letra != 'z'; letra = String.fromCharCode(letra.charCodeAt(0)+1)){
...
}
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #3 (permalink)  
Antiguo 04/01/2010, 01:27
 
Fecha de Ingreso: diciembre-2009
Mensajes: 4
Antigüedad: 14 años, 4 meses
Puntos: 0
Respuesta: Bucle For

Muchas gracias, lo acabo de provar y funciona correctamente. Se puede dar el tema por cerrado.

Saludos.

Etiquetas: bucle
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 02:36.