2013-04-23 5 views
10

Während der Arbeit mit minified Jquery bemerkte ich mehrere Anweisungen, die durch Kommas verkettet wurden.Verknüpfen mehrerer Anweisungen mit Kommas im Vergleich zu Semikola

Für Beispiel

event.preventDefault(); 
event.stopPropagation(); 
jQuery.event.trigger(event, data, this[0]); 
return event.result; 

minimierte zu:

c.preventDefault(),c.stopPropagation(),d.event.trigger(c,b,this[0]);return c.result 

ich eine ähnliche Frage sehen tat JavaScript variable definition: Commas vs. Semicolons

Aber in diesem Fall offensichtlich gibt es keinen Leistungsvorteil oder Reduktion der Zeichen .

Könnte ich annehmen, dass es nur eine Frage der Wahl für das Minifikations-Skript war, dies zu tun?

Wäre es nicht sicherer gewesen, mit Semikolon an erster Stelle zu gehen .. und den Overhead der Logik zu verhindern, die Verkettung von Kommas im Falle der Rückkehranweisung vermieden.

Antwort

23

Minifiers neigen dazu, Kommas zu bevorzugen, wo es möglich ist, weil es ermöglicht, dass die Statement-Körper wie if gekürzt werden. Zum Beispiel:

if (x) { 
    y = 10; 
    z = 20; 
} 

Das Obige kann ein Komma entfernen Sie die geschweiften Klammern minimierte werden (da sie optional sind, wenn der if Anweisung Körper nur eine einzige Aussage ist):

if (x) y = 10, z = 20; 

In solchen Fällen Dies führt zu einem kürzeren Code, auf den die Minifier zielen.