J'utilise jQuery 1.7.1
Je commence tout juste à utiliser l'opérateur ternaire JavaScript pour remplacer de simples instructions if / else. Je l'ai fait avec succès à plusieurs endroits. J'ai été surpris quand j'ai réussi à faire fonctionner quelque chose d'autre alors que je pensais avec certitude que ce ne serait pas le cas, mais j'ai quand même essayé.
Voici la déclaration originale:
function updateItem() {
$this = $(this);
var IsChecked = $this.hasClass("IsChecked");
if (IsChecked == true){
removeItem($this);
} else {
addItem($this);
}
}
Voici la même fonction utilisant l'opérateur ternaire:
function updateItem() {
$this = $(this);
var IsChecked = $this.hasClass("IsChecked");
(IsChecked == true) ? removeItem($this) : addItem($this);
}
J'ai été surpris car tous les exemples que j'ai vus utilisés ne faisaient que définir des variables comme celle-ci:
x = (1 < 2) ? true : false;
Ma question est de savoir si c'est une utilisation "normale" et cela fonctionnera-t-il dans la plupart des versions de JavaScript? Où échouera-t-il? Y a-t-il d'autres utilisations moins évidentes?
MISE À JOUR - Merci pour les conseils "du monde réel" !!!
J'utilise ceci comme ma fonction:
function updateItem() {
$this = $(this);
$this.hasClass("IsChecked") ? removeItem($this) : addItem($this);
}