Javascript——布尔值、关系运算符、逻辑运算符

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/mintsolace/article/details/78660272

布尔值即true和false

    <script type="text/javascript">
        var a=true;
        var b=false;
        console.log(a);
        console.log(b);
        console.log(typeof a);
        console.log(typeof b);
    </script>

分别输出的是:true; false; boolean; boolean
布尔值可以直接使用,不加引号

关系运算符
>大于号
<小于号
>=大于或等于
<=小于或等于
==等于
===全等于
!=不等于
!==不全等于

关系运算符得到的结果都是布尔值,要么是true要么是false

    <script type="text/javascript">
        console.log(-6<=9); //true
        console.log(55>9); //true
        console.log(5>=9); //false
        console.log(100<5); //false
    </script>

使用==:

console.log(5==5); //true
console.log(5==6); //false

可以用来判断用户是否及格

    <script type="text/javascript">
        //得到用户成绩
        var score="parseInt(prompt("请输入成绩"));
        //输出结果
        alert(score>=60);
    </script>

注意,在JS中,=符号只有一个意思,表示赋值,如果想判断两个东西是否相等,需要使用==符号,不能使用一个等号来表示等于关系。

==这个符号还可以用来验证字符串是否相同:

console.log("啦啦啦啦啦"=="啦啦啦啦啦啦");

==这个符号不严谨,会将不同类型的东西转为相同类型进行比较:

console.log("5"==5); //true
console.log(56="56"); //true

===全等于

console.log("12"===12); //false
console.log(12==="12"); //false
console.log("55"==="55"); //true
console.log(55===55); //true

也就是说,==两个等号不严谨,”5”和5是true;===三个等号更为严谨,”5”和5是false。

!=就是==反面;!==就是===的反面

console.log(3!=8); //true
console.log(3!="3"); //false
console.log(3!=="3"); //true

逻辑运算符 即&&: 与(且); ||: 或; !: 非
参与逻辑运算的都是布尔值,只有true和false才能参与逻辑运算,得到的答案仍然是布尔值。

<script type="text/javascript">
//&&表示“且”,都真才真
console.log(true&&true); //true
console.log(true&&false); //false
console.log(false&&true); //false
console.log(false&&false); //false
</script>
    <script type="text/javascript">
        //||表示或者
        console.log(true||true); //true
        console.log(true||false); //true
        console.log(false||true); //true
        console.log(false||false); //false
    </script>

!表示”非”

    console.log(!true); //false
    console.log(!false); //true

连比的写法
比如想看1这个数字是不是在3和5之间,
错误的写法:console.log(3<1<5);
因为计算机会先计算3<1,得到的答案是false,然后false<5,false会被隐式转换为0,0<15是true。
正确的写法应该拆开,中间用一个&&连接,即”3小于1”且”1小于5”。

console.log(3<1&&1<5);

得到的答案是false。

例:交通法规定18-70岁能够考驾照,判断一个人是否能够考驾照,则:

//得到用户年龄
var age=parseInt(prompt("请输入年龄"));
//显示结果
alert(age>=18&&age<=70);

猜你喜欢

转载自blog.csdn.net/mintsolace/article/details/78660272