老师,我想问一下,为什么这三个返回不能都是true而是1,1,true呢

来源:6-11 编程练习

邓歌

2019-06-13 09:38:56

<!DOCTYPE html>

<html>

<head>

    <meta charset="UTF-8">

    <title>逻辑操作符</title>

</head>

<body>

    <script>

//补充代码

var x=NaN,y=undefined,z=1;

var m=1,n="0",j=33;

var a=!(!undefined),b=!0;

console.log(x||y||z);//true

console.log(m||n||j);//true

console.log(a||b);//true

</script>

</body>

</html>


写回答

1回答

好帮手慕慕子

2019-06-13

同学你好, 对于逻辑或运算符, 如果有一个操作数的隐士类型转换结果为true,就会返回该操作数,按着这个原理, 第一条输出的返回的z的值1, 第二条返回的是m的值1, 第三条!(!undefined)的结果是false, !0的结果是true, 所以返回的是true

如下图所示,视频中老师有讲到哦

http://img.mukewang.com/climg/5d01e6f000017a8112910806.jpg

同学可以回顾一下视频加深理解 

如果帮助到了你, 欢迎采纳!

祝学习愉快~~~

0

0 学习 · 40143 问题

查看课程