!! this.checked的反义词是什么?

时间:2015-09-14 18:56:02

标签: javascript jquery html checkbox

当我检查另一个时,我试图取消选中一个框。除非我需要了解this.checked的反面以及!!this.checked的相反内容,否则我完成所有工作。

基本上我想使用我现有的方法,而不是为新方法更改所有代码,所以我只需要知道相反的方法。

this.checked检查复选框,但我希望相反,所以当它运行时取消勾选它。

4 个答案:

答案 0 :(得分:3)

使用!!两次基本上将其后的任何值转换为布尔值(truefalse),如果它不是布尔值的话。

如果你有:

var example = 0;

并致电:

console.log( !!example );

您将获得false,因为0false作为布尔值。

当您使用!一次时,您获得了布尔值,但却反对它的值,因此再次使用example变量:

console.log( !example );

这会记录true,因为与0相反的布尔值是true

因此,与!!this.checked相反的是!this.checked,在您的方案中为true(因为this.checked原来是false

也许这会帮助你理解更多:

var foo = false,
    bar = true;

!foo; // true: opposite of false is true.
!bar; // false: opposite of true is false.

!!foo; // false: opposite of false is true, opposite of true is false.
!!bar; // true: opposite of true is false, opposite of false is true.

答案 1 :(得分:1)

!!返回一个不是没有。 说你有一个var test = true;

!test变为false

!!test再次成为true

记住 - 爆炸!砰!你是布尔。

答案 2 :(得分:0)

选中此选项:

chrome.storage.local.set({'theIDofmyCheckbox2': $(this).is(':checked')});

未选中此选项:

chrome.storage.local.set({'theIDofmyCheckbox2': !$(this).is(':checked')});

! =不, ! =不是=是

答案 3 :(得分:0)

!!this.checked的反面只是!this.checked,即

chrome.storage.local.set({'theIDofmyCheckbox2': !this.checked});

说明:

!this.checkedtrue或任何其他虚假值(例如this.checkedfalse ...)时,

0null,并且否则为false

!!this.checked与此相反。