0


1

jQuery document.write?

Je ne sais pas si c’est le bon endroit pour publier, mais en regardant le passe-partout HTML5 que j’ai …​

window.jQuery || document.write('<script src="_includes/js/libs/jquery-1.6.2.min.js"><\/script>')

Maintenant, j’ai lu que le deuxième script est un repli si le premier est en panne, mais comment? J’ai toujours pensé || était un opérateur OU et pour moi, il semble que cela indique que lorsque la page se charge, écrivez une ancienne bibliothèque jQuery sur la page?

2 Answer


4


La seconde moitié de l’opérateur || n’est évaluée que si le côté gauche est "falsey". C’est ce qu’on appelle "l’évaluation des courts-circuits" *

Ainsi, lorsque window.jQuery est` undefined`, il fait le document.write ().

'' '' '

  • vrai || x == true, quelle que soit la valeur de x, donc un court-circuit L’opérateur || donné true pour son opérande gauche sautera l’évaluation de la main droite de l’expression car il ne change pas le résultat.

Inversement false && x == false.


1


Parce que javascript est un langage falsifié, si jQuery n’est pas disponible, window.jQuery retournera` undefined` qui équivaut à false.

Par conséquent, la deuxième partie de la déclaration sera exécutée, qui écrit le ``

</code> balise vers le document contenant la version de sauvegarde locale de jQuery. </p>