Je suis à l'aide de jQuery 1.7.1
Je commence tout juste à utiliser le JavaScript opérateur ternaire pour remplacer simple if/else. Je l'ai fait avec succès dans plusieurs endroits. J'ai été surpris quand j'ai réussi à faire quelque chose d'autre que je croyais que ce ne serait pas, mais j'ai essayé quand même.
Voici l'original de la déclaration:
function updateItem() {
$this = $(this);
var IsChecked = $this.hasClass("IsChecked");
if (IsChecked == true){
removeItem($this);
} else {
addItem($this);
}
}
Voici la même fonction à l'aide de l'opérateur ternaire:
function updateItem() {
$this = $(this);
var IsChecked = $this.hasClass("IsChecked");
(IsChecked == true) ? removeItem($this) : addItem($this);
}
J'ai été surpris parce que tous les exemples que j'ai vu être utilisés étaient simplement de la définition de variables comme ceci:
x = (1 < 2) ? true : false;
Ma question est de savoir si c'est "normal" d'utilisation et fonctionne dans la plupart des versions de JavaScript? Où est-il échouer? Existe-il d'autres moins évidents utilise pour cela?
Mise à JOUR -- Merci pour le "monde réel" des conseils!!!
Je me sers de ce que ma fonction:
function updateItem() {
$this = $(this);
$this.hasClass("IsChecked") ? removeItem($this) : addItem($this);
}