了解not运算符的用法:selected

时间:2015-10-02 17:10:31

标签: javascript jquery

我刚刚在网上看到了 FIDDLE 。 JS如下所示:

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

HTML ::

<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">

它基本上只是一个JS交换选择值的一块。但我不明白的是使用!运算符(不是运算符)。

现在我明白not运算符会反转结果,但在上面的代码中它实际上是做什么的?我不明白not操作员在上面的小提琴中做了什么以及它对最终结果有什么影响?谁能解释一下?

1 个答案:

答案 0 :(得分:5)

这是一种奇特的做法:

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

return false通过取消事件来阻止按钮的默认行为。

由于对象始终是真实的,!object将为false,$(selector)将返回对象