Supongo que el ;
es para asegurar que los empacadores de Javascript no arruinen la línea, pero eso es lo mejor que tengo.
La lógica o está allí para asegurarse de que jQuery.ui
no se declare dos veces. JavaScript hace cortocircuito, por lo que no evaluará el lado derecho de ||
si el lado izquierdo se evalúa como algo que es truthey(gracias JP!).
desciframiento de la sintaxis de bonificación, que $ que se transfiere a la función anónima es la referencia a jQuery. Tuviera que desplazarse hasta el fondo de la página antes de que uno hace clic :-)
tanto, aquí está una versión desglosado de la línea anterior
; // extra semi colon to ensure correct concatenation and minifying
jQuery.ui // check if the variable called jQuery.ui is truthey
|| // OR if jQuery.ui isn't defined
(function($) {...})(jQuery); // define and execute an anonymous function
// passing in the conflict safe jQuery
// as the parameter called $
La primera de sus preguntas es un duplicado de [¿Qué hace el punto y coma principal en las bibliotecas de JavaScript?] (Http://stackoverflow.com/q/1873983/1048572) – Bergi
o al revés? La pregunta que vinculó es unos meses más nueva que esta ... – jrharshath
La pregunta que he vinculado es la canónica sobre el tema, con mejores respuestas, es por eso que la vinculé. – Bergi