我可以使这段代码更干净的Javascript?


var isFilterOn = false;
$('#toggle-filter-btn').on('click', function(e){
e.preventDefault();
if(!isFilterOn){
isFilterOn = true;
}else{
isFilterOn = false;
}
})

假设我有上述一段代码。

现在,我希望使我设置isFilterOn为真或假的部分更简洁。

所以我试了这个

var isFilterOn = false;
$('#toggle-filter-btn').on('click', function(e){
e.preventDefault();
isFilterOn == false ? isFilterOn = true : isFilterOn = false; 
})

但我怀疑是否有更好的方法来做到这一点?

直接赋值求真值的结果:

$('#toggle-filter-btn').on('click', function(e){
e.preventDefault();
isFilterOn = !isFilterOn;
});

这样你的代码就会干净一些

var isFilterOn = false;
$('#toggle-filter-btn').on('click', function(e){
e.preventDefault();
// your way
isFilterOn == false ? isFilterOn = true : isFilterOn = false; 
// little clean version
isFilterOn = isFilterOn?false:true;
// best option use revers boolean operator
isFilterOn = !isFilterOn 
})

最新更新