javascript - 单击颜色更改 - bool 值

标签 javascript

为什么第一次点击必须等于 false。如果我将其切换为 true,则它不起作用。 为什么当我单击时,它首先转到 else 语句,即使我在最后尝试使用 click= !click ,它也会变成黄色。 不给点击赋值可以吗?

     var button = document.querySelector("button");
     var click;

     button.addEventListener("click", function() {
      if (click){
        document.body.style.backgroundColor = "pink";
        click=false;
      }else {
    document.body.style.backgroundColor = "yellow";
    click=true;
      }


    });

最佳答案

数据类型的一些初始值:

int => 0
string => null
boolean => false

这就是为什么当你在 JavaScript 中声明变量并用作 bool 值时,它将返回 false;

var b; // initial value is false
if(b){ // if(false) => ...going to else block
 console.log(true);
}else{
 console.log(false);
}

如果您希望 bool 值为 true,则必须指定 true:

var b = true;

关于javascript - 单击颜色更改 - bool 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60124175/

相关文章:

javascript - 调用变量中指定的对象的 Javascript 成员函数

javascript - 将控件添加到 ng-repeat 以过滤数据

javascript - AngularJS 包含基于当前路由的脚本

javascript - react-router-redux 无法推送新 URL

javascript - 新的固定位置 div 创建后滚动条不显示

javascript - 如何以 Angular 修复 404(未找到)

javascript - AngularJS - ng-model 未选择任何选择选项 - 无法访问数据

javascript - 警告 move_uploaded_file() : Unable to move audio file in php

javascript - 提交前检查输入总和

javascript - 如何在对象中按键和值查找索引(但其完全对象没有数组)