javascript - window.jQuery || document...什么意思,请求分析
PHP中文网
PHP中文网 2017-04-11 11:28:57
[JavaScript讨论组]

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

')

PHP中文网
PHP中文网

认证高级PHP讲师

全部回复(4)
阿神

建议题目修改为: 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是真值。

天蓬老师

如果你已经加载了jquery文件,那么window.jQuery就是一个合法对象
如果没有加载,那么就是undefined, 逻辑上就是假
假的话就会执行|| 右边的语句

所以整句的含义是:
如果没有加载jquery,那么就加载!(往HTML DOM里面写入script来加载jquery.xx.js)

作用就是保证jquery加载,且只加载一次

PS: 如果你问的是jQuery是什么的话……建议直接百度或谷歌,这里简单说说,jQuery是一个javascript库,实现了很多有用的功能。网上还有很多依赖jQuery的插件,很好用的

巴扎黑

如果没有加载jquery,则加载jquery。

jQuery加载后,会在window对象上创建jQuery属性。所以根据window.jQuery来判断是否加载过jQuery

用的是短路求值。A || B(A或B)中,如果A的值为真,则不对B求值,结果直接为真。如果A的值为假,则对B求值,B的真假值为此表达式的真假值。

window.jQuery为真,则不执行||后面的语句,如果window.jQuery为假。则在文档中插入script标签的方式载入jquery库(js/vendor/jquery-1.10.2.min.js)。

阿神

题主可以简单的理解为 : 这段代码的意思 因为这个网站是用jquery开发的。 也就是对 jquery的依赖。
没有引用jquery库就会报错。为了防止这样的事情发生。所以这样写。首先判断有没有window.jQuery,如果没有(也就是false)。就执行后面的document.write('<script src="js/vendor/jquery-1.10.2.min.js"></script>')。如果存在window.jQuery(也就是true) 就什么都不做。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号