2015-10-02 17 views
5

Bu FIDDLE ürününü çevrimiçi olarak gördüm. JS aşağıda benziyor:Operatörün kullanımını anlama: seçili

$(function() { 
    $('#add').click(function() { 
     return !$('#select1 option:selected').appendTo('#select2'); 
    }); 
    $('#remove').click(function() { 
     return !$('#select2 option:selected').appendTo('#select1'); 
    }); 
}); 

HTML :: seçkin değerleri değiştirilerek JS

<SELECT id="select1" name="select1" size="3"><OPTION value="1">Test 1</option><OPTION value="2">Test 2</option></select> 
<SELECT id="select2" name="select2"></select> 
<br><input type="button" id="add" value="Add >>"><input type="button" id="remove" value="<< Remove"> 

Onun temelde sadece bir parça. Ama anlamadığım, ! operatörünün (operatör değil) kullanımıdır.

Şimdi, operatörün sonucu tersine çevirdiğini anlıyorum, ancak yukarıdaki kodda gerçekten ne yapıyor? Yukarıdaki kemanda operatörün ne yaptıklarını ve sonuçta ne gibi bir etki yarattığını anlamadım mı? Herkes anlatabilir mi?

cevap

5

O yapmanın süslü yolu:

$('#add').click(function() { 
     $('#select1 option:selected').appendTo('#select2'); 
     return false; 
}); 

return false olayı iptal ederek düğmenin varsayılan davranışını önler.

bir nesne daima truthy olacağından, !object yanlış olacak ve $(selector) ile ve `!` Operatörü olmadan etkisi ne

+0

, ben hala alamadım :( –

+0

Nesneyi döndürür! OMG! Ben, Woooow süper serin tekniği var. –

+1

@AlexanderSolonik aslında ben de çok düşündüm ... – charlietfl

İlgili konular