【问题标题】:What does "||" mean? [duplicate]"||" 是什么意思意思是? [复制]
【发布时间】:2014-08-30 07:24:01
【问题描述】:

我是新手,正在尝试自己学习 javascript。

有一个例子:

 var scrollTop = document.documentElement.scrollTop || document.body.scrollTop

我只是想知道符号“||”是什么意思做?谢谢!感谢您的帮助。

【问题讨论】:

标签: javascript syntax


【解决方案1】:

这意味着您正在尝试获取document.documentElement.scrollTop 函数,但如果它返回undefined(因为给定浏览器不支持该函数),它将使用document.body.scrollTop 函数。

【讨论】:

  • 如果document.documentElement.scrollTop 已定义,但恰好具有0 的值,那么该语句将采用document.body.scrollTop 的值。
【解决方案2】:

如果document.documentElement.scrollTopundefinednull,scrollTop=document.body.scrollTop

【讨论】:

    【解决方案3】:

    这里是|| 逻辑或运算符。

    Logical OR operator returns the first value of first operand if that is truthy
    otherwise it returns the second operand.
    

    上述说法同

    if(document.documentElement.scrollTop){
       var scrollTop = document.documentElement.scrollTop
    }
    else{
       var scrollTop = document.body.scrollTop
    }
    

    【讨论】:

    • "具有除 null/undefined 之外的值" - 或零或假或空字符串或 NaN。
    • @nnnnnn 更新了我的答案。我知道0,'' & NaN 也是假的。
    猜你喜欢
    • 2019-09-12
    • 2015-01-22
    • 2020-10-27
    • 2015-07-15
    • 2018-07-17
    • 2012-08-13
    • 1970-01-01
    • 1970-01-01
    • 2011-04-16
    相关资源
    最近更新 更多