window.jQuery || document...什么意思,请求分析

这句话是什么意思, 也就是 window.jQuery 不懂。

<script>window.jQuery || document.write('<script src="js/vendor/jquery-1.10.2.min.js"></script>')</script>

阅读 7.8k
评论
    4 个回答
    • 1.1k

    建议题目修改为: window.jQuery || document...什么意思,请求分析

    window是浏览器端的全部数据变量的引用。
    比如 window.window === window

    window.jQuery 就是浏览器中的全局变量里的jQuery
    那为什么不写 jQuery 而是写 window.jQuery呢?
    你可以试试,直接jQuery然后回车,会报一个错误。而window.jQuery只是返回undefined而已。

    接下来是||运算符,这是“或”运算
    比如 c = a || b
    当且仅当 a和b同时为“假值”时,c才为false。
    那么当a时“真值”时,js引擎会偷懒,不运算b的值,反正c都是true嘛。

    那么window.jQuery || document....
    的结果就是,如果window.jQuery为“假值”,才会运行document...。
    如果window.jQuery是“真值”,不运行后面的语句。
    而undefined是一个假值。
    总而言之,这句话的效果是window.jQuery如果没有赋值或者是假值,调用后面那句话。
    而后面那句话是用来加载一个本地的jquery脚本的。
    正常引入了jquery的话,会有一个全局变量jQuery,也就是window.jQuery是真值。

      相似问题
      推荐文章