为了账号安全,请及时绑定邮箱和手机立即绑定

浏览器兼容方案中的 “||” 符号是什么意思?

本节课以及后续两节课都涉及到了一个浏览器兼容方案的介绍:

  • var w= document.documentElement.clientWidth || document.body.clientWidth;

  • var h= document.documentElement.clientHeight || document.body.clientHeight;

想问一下其中的 || 是代表什么逻辑呢?

正在回答

6 回答

https://img1.sycdn.imooc.com//5b9b1a06000183a808750688.jpg

在网上查到的  应该这么理解吧 不是判断true和false的

1 回复 有任何疑惑可以回复我~

其实就是“或逻辑”的操作符,当前面的值不为:null、0、false、undefined、""(空字符或空字符串)时,返回前面的值(负数、正数、字符、字符串都行);否则返回后面的值(包括:null、0、false、undefined、"")

1 回复 有任何疑惑可以回复我~

我测试过了,如果 '||'  两边都是数字或字符串类型,则返回值不是布尔值,而是其中一个的值;

如果左边是字符串或非0任一数字,则返回左边的值,如果左边是数字0,则返回右边的值

1 回复 有任何疑惑可以回复我~
#1

精雕慕刻 提问者

我没试过,但是凭直觉,我认为你说的比其他人说的都对。
2019-01-22 回复 有任何疑惑可以回复我~

这是逻辑‘或’吧,逻辑或“||”,按位或“|”

0 回复 有任何疑惑可以回复我~

你先把前面的课程学习了,在看这节课吧. 前面不是有||的讲解嘛.

0 回复 有任何疑惑可以回复我~
#1

精雕慕刻 提问者

https://www.imooc.com/code/137 你说的这节课吧,确实讲了||,但是对于问题中的||,怎么解释?
2018-10-18 回复 有任何疑惑可以回复我~
#2

慕粉3952632 回复 精雕慕刻 提问者

对于函数而言,||的话,是不是就返回对应的番薯返回值,对于数据类型,像整型什么的,就会返回逻辑关系值,True或者false
2018-11-27 回复 有任何疑惑可以回复我~
#3

慕粉3952632 回复 精雕慕刻 提问者

document.write(0||2+"<br />"); document.write(3||2); 分别输出2,3
2018-11-27 回复 有任何疑惑可以回复我~
#4

慕粉3952632 回复 精雕慕刻 提问者

js确实不一样 ,&&的话,为真就返回第二个为真的值;||的话,第一个为真就返回第一个的值;第二个为真就返回第二个的值,否则就返回0
2018-11-27 回复 有任何疑惑可以回复我~
#5

精雕慕刻 提问者 回复 慕粉3952632

对,谢谢!
2019-01-22 回复 有任何疑惑可以回复我~
查看2条回复

不是或的意思吗?

0 回复 有任何疑惑可以回复我~
#1

精雕慕刻 提问者

假如 var w = 32 || 100,辣么w等于多少捏?
2018-06-30 回复 有任何疑惑可以回复我~
#2

放狗过来

如果w=32或者100。为true,不是这俩数,可以判断为false
2018-07-24 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

浏览器兼容方案中的 “||” 符号是什么意思?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信