Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1631 connectés 

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  type of et undefined

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

type of et undefined

n°2103933
naeco
Buddy Rich Big Band
Posté le 29-09-2011 à 13:19:30  profilanswer
 

Bonjour,
 
J'aurai besoin de remplir un remplir un tableau suivant des clefs valeurs. Mais je ne sais pas si la clef a déjà été défini ou pas, alors je dois tester son contenu avant.
Si elle n'a pas été encore défini, alors je l'initialise avec un début de string.
 
Pour ça, j'ai voulu mettre en place ce code :
 

Code :
  1. $.each(data, function(index, value) {
  2.  if( typeof(tableauAutorisations[value['gro_id']]) === "undefined" ) {
  3.   tableauAutorisations[value['gro_id']] = "<tr><td>" + value['gro_libelle'] + "</td>";
  4.   tableauAutorisations1erColonne[tableauAutorisations1erColonne.length +1] = value['gro_id'];
  5.  }
  6. ....
  7. });


 
Il marche bien, mais il apparait à l'écran à chaque tour de boucle un "undefined"
 
Alors j'ai tenté cette version :
 

Code :
  1. $.each(data, function(index, value) {
  2.  try {
  3.   var isDefined = tableauAutorisations[value['gro_id']];
  4. //ou
  5.   var isDefined = (tableauAutorisations[value['gro_id']] == "undefined" );
  6.  } catch(e){
  7.   console.debug("nouvelle clef 'groupe' ajouté." );
  8.   tableauAutorisations[value['gro_id']] = "<tr><td>" + value['gro_libelle'] + "</td>";
  9.   tableauAutorisations1erColonne[tableauAutorisations1erColonne.length +1] = value['gro_id'];
  10.  }
  11. });


 
mais là, je ne passe jamais dans le catch...
 
existe t'il une solution ?

mood
Publicité
Posté le 29-09-2011 à 13:19:30  profilanswer
 

n°2103990
naeco
Buddy Rich Big Band
Posté le 29-09-2011 à 18:54:15  profilanswer
 

bah finalement je me suis arrangé pour faire autrement...
 
Mais si quelqu'un à une solution, je suis quand même preneur par curiosité !

n°2104355
Pascal le ​nain
Posté le 02-10-2011 à 20:37:25  profilanswer
 

Dans les deux cas tu te trompes dans tes conditions :
 
if( typeof(tableauAutorisations[value['gro_id']]) !== "undefined" )  
 
var isDefined = (tableauAutorisations[value['gro_id']] != "undefined" )
 
C'est peut etre a cause de ca que ca merde


Message édité par Pascal le nain le 02-10-2011 à 23:47:11
n°2104358
naeco
Buddy Rich Big Band
Posté le 02-10-2011 à 20:46:53  profilanswer
 

Pour le premier cas, je voulais tester une égalité, ça aurait été "===" alors ? Je suis plus sûr de moi, mais je crois que j'avais testé ça sans succès.
 
Merci en tout cas !
 
Hum, dois-je passer le topic en résolu ? puisque au final il ne l'est pas vraiment, et je n'ai plus besoin de le mettre en place :o

n°2104360
Pascal le ​nain
Posté le 02-10-2011 à 20:50:49  profilanswer
 
n°2104369
naeco
Buddy Rich Big Band
Posté le 02-10-2011 à 21:37:55  profilanswer
 

zut alors, c'était sans quote... je me coucherai moins bête !
 
Test if variables are undefined:

Code :
  1. <script type="text/javascript">
  2. var t1="";
  3. var t2;
  4. if (t1==undefined)
  5. {
  6. document.write("t1 is undefined" );
  7. }
  8. if (t2==undefined)
  9. {
  10. document.write("t2 is undefined" );
  11. }
  12. </script>


 
The output of the code above will be:

Code :
  1. t2 is undefined


 
merci !

n°2104379
masklinn
í dag viðrar vel til loftárása
Posté le 02-10-2011 à 23:45:30  profilanswer
 

Ce sont deux choses différentes (3 en fait):

 

1. undefined === undefined, dans ce cas c'est la valeur undefined.

 

2. undefined == undefined, c'est valide, c'est la valeur undefined, mais null == undefined (l'égalité non stricte essaie tout le temps de renvoyer true)

 

3. typeof undefined === 'undefined', typeof retourne le type des valeurs primitives de Javascript (undefined, number, string, function) ou bien "object" (pour tout le reste, y compris null). Il a aussi l'avantage de ne pas évaluer un nom, et donc de fonctionner (sans générer de warning) pour des variables n'ayant pas été définies (avec var).


Message édité par masklinn le 02-10-2011 à 23:46:50

---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  HTML/CSS

  type of et undefined

 

Sujets relatifs
[VBA] Type utilisateur et objetIncompatible type: services web java
Undefined reference to `vatable for RenduTroisD`[RESOLU] Extraire un sous-type d'une arrayList
[OCAML] question sur un typeTyper un objet de type variable
Problème incompatibilité type Excel VBA (Help, Stagiaire en détresse!)Undefined offset : 2 ?
[RESOLU]Quel type de jointure pour ceci ?' ' does not name a type
Plus de sujets relatifs à : type of et undefined


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR