IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

comment definir un array undefined


Sujet :

JavaScript

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre �clair�
    Profil pro
    Inscrit en
    D�cembre 2007
    Messages
    478
    D�tails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : D�cembre 2007
    Messages : 478
    Par d�faut comment definir un array undefined
    Bonjour,

    Je vais essayer de m'expliquer, desole je ne suis pas informaticien et je ne possede pas le vocabulaire adequate

    j'ai un array avec un nombre de valeurs numerique (1,2,3,etc...) a l'interieurs qui change en permanence.

    je cherche a faire une fonction pour que si une des valeur n'existe pas elle utilise la valeur du premier element de l'array.

    j'ai essaye les combinaisons suivantes mais meme si j'ai une valeur dans long[1] il me la trasforme quand meme en long[0].
    Comment definir une variable long[2] alors que le dernier element de mon array serait long[1]



    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    if (long[1] !== '0') { 
    long[1] = long[0];
    }
    ou encore
    if (long[1] !== 'undefined') { 
    long[1] = long[0];
    }
    j'ai aussi essaye (toujours sans succes)

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    if (long[1] > 0) { 
    break;
    else
    long[1] = long[0];

    Merci de votre aide

  2. #2
    Inactif  

    Profil pro
    Inscrit en
    Mai 2010
    Messages
    345
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 345
    Par d�faut
    Citation Envoy� par voyageurdumonde Voir le message
    Bonjour,

    Je vais essayer de m'expliquer, desole je ne suis pas informaticien et je ne possede pas le vocabulaire adequate

    j'ai un array avec un nombre de valeurs numerique (1,2,3,etc...) a l'interieurs qui change en permanence.

    je cherche a faire une fonction pour que si une des valeur n'existe pas elle utilise la valeur du premier element de l'array.

    j'ai essaye les combinaisons suivantes mais meme si j'ai une valeur dans long[1] il me la trasforme quand meme en long[0].
    Comment definir une variable long[2] alors que le dernier element de mon array serait long[1]



    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    if (long[1] !== '0') { 
    long[1] = long[0];
    }
    ou encore
    if (long[1] !== 'undefined') { 
    long[1] = long[0];
    }
    j'ai aussi essaye (toujours sans succes)

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    if (long[1] > 0) { 
    break;
    else
    long[1] = long[0];

    Merci de votre aide
    pour tester si une variable est nulle ou n'est pas d�finie en javascript tu as 3 m�thodes :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    if(mavar!=null) {
     
    }
    // OU
    if(typeof mavar == 'undefined') {
     
    }
    // OU plus simplement
    if(!mavar) {
     //si mavar est null ou chaine vide "" la condition sera true
    }
    Ben oui, toi tu testais si mavar!='undefined', mais tu ne faisais que tester une variable avec une chaine de caract�res d'ou l'utilisation du typeof, mais je pr�f�re la 3�me m�thode qui est plus simple.

    Maintenant pour modifier ton tableau en question il suffit simplement de le parcourir avec une boucle et de faire le test ad�quat.

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
     
    //en javascript un tableau commence à 0 et fini à longueur-1, mais comme 
    //ici on saut que 0 n'est pas une valeur vide, alors on n'a pas besoin de commencer par zéro.
    for (var i=1; i<long.length; i++) {
       if(!long[i]) {
           long[i] = long[0];
       }
    }

  3. #3
    Membre Expert
    Avatar de RomainVALERI
    Homme Profil pro
    POO�te
    Inscrit en
    Avril 2008
    Messages
    2 652
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 48
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activit� : POO�te

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 652
    Par d�faut
    Si tu dois faire cette v�rification pour l'ensemble des �l�ments de ton tableau :
    Code javascript : S�lectionner tout - Visualiser dans une fen�tre � part
    for (var i = 0, iMax = long.length; ++i) long[i] = long[i] || long[0];
    C'est une notation qui est devenue assez courante pour attribuer une valeur par d�faut, courte et lisible.

    edit : attention ce code contient une erreur (corrig�e plus bas, merci au vigilant dukej )

  4. #4
    Inactif  

    Profil pro
    Inscrit en
    Mai 2010
    Messages
    345
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 345
    Par d�faut
    Citation Envoy� par RomainVALERI Voir le message
    Si tu dois faire cette v�rification pour l'ensemble des �l�ments de ton tableau :
    Code javascript : S�lectionner tout - Visualiser dans une fen�tre � part
    for (var i = 0, iMax = long.length; ++i) long[i] = long[i] || long[0];
    C'est une notation qui est devenue assez courante pour attribuer une valeur par d�faut, courte et lisible.
    y a une erreur dans ton for
    Et doucement avec le monsieur, il a dit qu'il n'�tait pas informaticien, si tu viens lui balancer les notations all�gers de type
    var = var || "newvalue";
    il va pas comprendre

  5. #5
    Membre Expert
    Avatar de RomainVALERI
    Homme Profil pro
    POO�te
    Inscrit en
    Avril 2008
    Messages
    2 652
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 48
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activit� : POO�te

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 652
    Par d�faut
    Citation Envoy� par dukej Voir le message
    y a une erreur dans ton for
    Merci pour la relecture
    >>> Au temps pour moi je suis all� trop vite
    Code javascript : S�lectionner tout - Visualiser dans une fen�tre � part
    for (var i = 0, iMax = long.length; i < iMax; ++i) long[i] = long[i] || long[0];

  6. #6
    Membre Expert
    Avatar de RomainVALERI
    Homme Profil pro
    POO�te
    Inscrit en
    Avril 2008
    Messages
    2 652
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 48
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activit� : POO�te

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 652
    Par d�faut
    Citation Envoy� par dukej Voir le message
    le monsieur, il a dit qu'il n'�tait pas informaticien, si tu viens lui balancer les notations all�gers de type
    var = var || "newvalue";
    il va pas comprendre
    Bah, on aurait pu faire + compact et - clair
    Code javascript : S�lectionner tout - Visualiser dans une fen�tre � part
    for(var i=0,j=long.length;i<j;++i)long[i]||long[i]=long[0];

  7. #7
    Inactif  

    Profil pro
    Inscrit en
    Mai 2010
    Messages
    345
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 345
    Par d�faut
    Citation Envoy� par RomainVALERI Voir le message
    Bah, on aurait pu faire + compact et - clair
    Code javascript : S�lectionner tout - Visualiser dans une fen�tre � part
    for(var i=0,j=long.length;i<j;++i)long[i]||long[i]=long[0];
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    var i=-1;while(++i<long.length)long[i]||long[i]=long[0]
    ??

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. R�ponses: 5
    Dernier message: 24/05/2005, 12h31
  2. R�ponses: 2
    Dernier message: 02/05/2005, 11h57
  3. R�ponses: 7
    Dernier message: 11/04/2005, 22h23
  4. Comment definir un string java en c++
    Par chelguera dans le forum C++
    R�ponses: 13
    Dernier message: 31/12/2004, 12h56
  5. [SQLClientDataSet] comment definir un index ?
    Par kase74 dans le forum Bases de donn�es
    R�ponses: 1
    Dernier message: 29/09/2004, 14h14

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo