javascript Conditions sous la forme ternaire

Cascadeur

Membre
Hello,

J'arrive plus à me souvenir comment écrire une condition en ternaire pour une simple variable,
Ok pout le symbole ? mais quid de la syntaxe ? Quelqu'un a quelques souvenirs à ce propos ?

JavaScript
var age = 25, cat = "";

cat = (age < 40) ? "jeune" , "vieux";
alert(cat);

Ne renvoie pas la valeur stockée par cat en l'occurrence jeune dans ce cas :unsure:
 

Cascadeur

Membre
Salut Anthony,

Non il n'y a pas de problème à déclarer une variable avec une chaîne de caractère vide ""; dans la seconde partie du code je demande justement que cette variable puisse stocker le résultat de ma demande.

J'ai un problème de syntaxe quelque part, là je ne suis pas chez moi donc je navigue sur phone, mais en rentrant je chercherais mieux sur mon PC. Merci en tout cas et tu as raison c'est en forgeant qu'on devient développeur ! :)
 

Nicolas

Membre
Et bien justement dans le cas présent, Jeune et Vieux ne font pas partie d'une déclaration de valeurs mais sont l'expression d'une évaluation true ou false.
L'opérateur conditionnel - JavaScript | MDN (mozilla.org)

En code classique je pense que cela donnerait quelque chose comme ça
JavaScript
var age = 25;

if (age < 40) {
    alert("Jeune")
}
else {
    alert("Vieux")
}

Par contre je ne sais pas comment intégrer le fait de stocker l'évaluation dans la variable cat
 
Dernière édition:

Cascadeur

Membre
Tu as raison et de toutes façons la syntaxe ne se discute pas, ça se respecte.
pour stocker le résultat c'est simple, je ne sais pas pourquoi tu fais intervenir alert ici, ce n'était pas dans le code initial
JavaScript
var age = 25, cat = "";

if (age < 40) {
    cat = "Jeune"
}
else {
    cat = "Vieux"
}

(y)
 

Rockets__

Membre
pour stocker le résultat c'est simple, je ne sais pas pourquoi tu fais intervenir alert ici, ce n'était pas dans le code initial
Ben dans le code initial (corrigé) il y a bien alert
JavaScript
var age = 25, cat = "";

cat = (age < 40) ? "jeune" : "vieux";
alert(cat);

Donc on pourrait écrire
JavaScript
var age = 25, cat = "";

cat = (age < 40) ? "jeune" : "vieux";
document.write(cat);
JSFiddle affiche une notice document.write can be a form of eval qu'est-ce que cela signifie ? Le code fonctionne met il met une notice sur la ligne document.write(cat);
 

Wazz9

Membre

Eleven Up

Membre
Rien de grave en fait mais du coup comment utiliser getDocumentById() à la place ?
La question qui tue !
 

Ces discussions pourraient vous intéresser...

Bonsoir, j'ai fait une recherche sur le forum et je crois que personne n'en a encore parlé, j'ai trouvé un site pas mal lorsque j'ai installé easyPHP (qui est maintenant Webserver) : KodeShot. Cela permet de créer des captures d'écrans d'extrait de code. Vous tapez votre code, vous...
Hello, J'ai créé un formulaire avec Bootstrap mais j'ai un problème de mise en forme. Les <input> prennent chacun leur propre ligne alors que j'aimerais que certains soit côte à côte. Je ne parviens pas du tout à faire ce que je veux et je ne trouve rien dans la documentation...
Yo ! J'ai une div sans bordure remplie de cellules horizontales auxquelles j'applique une bordure sur le bord bas pour les séparer entre elles. Le problème c'est que la dernière je ne veux pas de bordure basse puisqu'il n'y a plus de cellule sous elle. Je n'ai pas la main sur le HTML...
Haut