JQuery 1.7.1 kullanıyorum
Basit if / else ifadelerini değiştirmek için JavaScript üçlü operatörünü kullanmaya yeni başlıyorum. Birçok yerde çok başarılı oldum. Başka bir şeyi başarılı bir şekilde çalıştırdığımda, olmayacağından emin olduğumda şaşırdım, ama yine de denedim.
İşte orijinal ifade:
function updateItem() {
$this = $(this);
var IsChecked = $this.hasClass("IsChecked");
if (IsChecked == true){
removeItem($this);
} else {
addItem($this);
}
}
Üçlü operatörü kullanan aynı işlev şu şekildedir:
function updateItem() {
$this = $(this);
var IsChecked = $this.hasClass("IsChecked");
(IsChecked == true) ? removeItem($this) : addItem($this);
}
Şaşırdım çünkü kullanıldığını gördüğüm tüm örnekler sadece böyle değişkenler ayarlıyordu:
x = (1 < 2) ? true : false;
Sorum, bunun "normal" kullanım olup olmadığı ve JavaScript’in çoğu sürümünde çalışacak mı? Nerede başarısız olacak? Bunun daha az belirgin kullanımları var mı?
GÜNCELLEME - "Gerçek dünya" tavsiyesi için teşekkürler !!!
Bunu işlevim olarak kullanıyorum:
function updateItem() {
$this = $(this);
$this.hasClass("IsChecked") ? removeItem($this) : addItem($this);
}