Comunidad de diseño web y desarrollo en internet online

Ayuda condiciones y arrays JavaScript

Citar            
MensajeEscrito el 06 Jul 2013 09:41 am
Hola, estoy intentando hacer una función, que almacene datos en el localStorage, la idea es que tengo un array de 5 posiciónes, y tengo que averiguar primero si alguna posición se encuentra ocupada, si veo que no está ocupada almaceno ese dato en ese array, se que no está correcto el código, pero ¿alguien me puede guiar un poco? he llegado hasta aquí :)

Código Javascript :

function recoger(){
    var qv = new Array(5);
    
    if(qv[0]=null){
        for(i=0; i<5; i++){
            for(j=0; j<5; j++){
                for(z=0; z<5; z++){
                    localStorage.setItem("qv[i]", "{{video.nombre}}");
                    localStorage.setItem("qv[j]", "{{video.foto}}");
                    localStorage.setItem("qv[z]", "{{video.link}}");
                }
            }
        }
    }
    else if(qv[1]=null){
        for(i=0; i<5; i++){
            for(j=0; j<5; j++){
                for(z=0; z<5; z++){
                    localStorage.setItem("qv[i]", "{{video.nombre}}");
                    localStorage.setItem("qv[j]", "{{video.foto}}");
                    localStorage.setItem("qv[z]", "{{video.link}}");
                }
            }
        }
    }
    else if(qv[2]=null){
        for(i=0; i<5; i++){
            for(j=0; j<5; j++){
                for(z=0; z<5; z++){
                    localStorage.setItem("qv[i]", "{{video.nombre}}");
                    localStorage.setItem("qv[j]", "{{video.foto}}");
                    localStorage.setItem("qv[z]", "{{video.link}}");
                }
            }
        }
    }
    else if(qv[3]=null){
        for(i=0; i<5; i++){
            for(j=0; j<5; j++){
                for(z=0; z<5; z++){
                    localStorage.setItem("qv[i]", "{{video.nombre}}");
                    localStorage.setItem("qv[j]", "{{video.foto}}");
                    localStorage.setItem("qv[z]", "{{video.link}}");
                }
            }
        }
    }
    else if(qv[4]=null){
        for(i=0; i<5; i++){
            for(j=0; j<5; j++){
                for(z=0; z<5; z++){
                    localStorage.setItem("qv[i]", "{{video.nombre}}");
                    localStorage.setItem("qv[j]", "{{video.foto}}");
                    localStorage.setItem("qv[z]", "{{video.link}}");
                }
            }
        }
    }else
        {
        alert("Ya completo");
    }
}

Por ramondevesa

2 de clabLevel



 

safari
Citar            
MensajeEscrito el 06 Jul 2013 04:40 pm
Lamento decepcionarte pero cualquier cosa que estés tratando de hacer lo estas haciendo mal.

no entiendo muy bien que esperas lograr con ese código pero veo algunos errores bastante obvios.

Primero, para comparar 2 valores dentro de un condicional (if) se utiliza el operador "==", es decir dos dignos "=" en vez de uno.

cuando haces esto

Código Javascript :

if(qv[0]=null){  }


estas asignándole el valor null a la variable qv[0], no lo estás comparando, lo correcto es hacerlo así

Código Javascript :

if(qv[0]==null){  }


Segundo, en vez de usar 5 condicionales deberías usar un bucle for, así no tienes que repetir tu código 5 veces.

cambiando los 5 condicionales por un for, tu código quedaría así:

Código Javascript :

function recoger(){

    var qv = new Array(5);

for (var i=0; i < qv.lenght; i++) {

   if(qv[i] == null){

       // acá va el código que repites dentro de cada condicional

   }

}


y tercero, no entiendo por que enlazas 3 bucles uno dentro de otro, que esperas lograr con eso?

Por HtrMancera

Claber

342 de clabLevel

1 tutorial

Genero:Masculino  

Front-end Developer

chrome
Citar            
MensajeEscrito el 06 Jul 2013 05:46 pm
La idea de hacerlo con i, j y z, era por que yo almaceno un video, y de ese video quiero, una imagen el título y su link, entonces quiero que el límite estuviese en 5 películas por eso, por lo demás muchas gracias!!!

Por ramondevesa

2 de clabLevel



 

safari
Citar            
MensajeEscrito el 06 Jul 2013 08:54 pm
La idea es hacerlo con localStorage

Por ramondevesa

2 de clabLevel



 

safari

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.