Ich habe mir den Code von has.js angesehen und war verwirrt von der Anfangssemikolon hier:
%Vor% Soweit ich weiß, tut es absolut nichts. Die Funktion wird nicht in die Ausdrucksposition als ()
oder !
do: (function(){}())
oder !function(){}()
gestellt. Es scheint nur eine Zeile Ender für eine leere Zeile zu sein.
Was ist der Zweck dieses Semikolons? Ein OCD-Wunsch nach Symmetrie zwischen Anfang und Ende des IIFE? :)
Es ist da, um zu verhindern, dass vorheriger Code Ihren Code als Argumente für eine Funktion ausführt.
d. h.
%Vor%führt mybrokenfunction mit Ihrer anonymen Funktion als Argument aus:
%Vor%Wenn Sie garantieren könnten, dass es vor Ihnen keine nicht abgeschlossene (kein Semikolon) Funktion gibt, können Sie das Start-Semikolon weglassen, aber Sie können nicht, also ist es sicherer, dieses zusätzliche Semikolon einzufügen.
Tags und Links javascript syntax