CDN失效时使用本地js文件:window.jQuery || document.write

时间:2021-06-14 13:27:28

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>

<script>window.jQuery || document.write('<script src="{% static 'js/jquery-1.10.2.min.js' %}"><\/script>')</script>

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

window.jQuery 就是浏览器中的全局变量里的jQuery

||运算符是“或”运算

比如 c = a || b

当且仅当 a和b同时为“假值”时,c才为false。

那么当a时“真值”时,c为True,js引擎就不运算b的值。

那么window.jQuery || document....的结果就是,如果window.jQuery为“假值”,才会运行document...。

如果window.jQuery是“真值”,不运行后面的语句。

开头的代码中,第一行引用CDN,当CDN失效时,第二行才起作用,使用本地的js文件。