3 ms·
Because standard-compliant JavaScript implementations don't require them (ECMAScript describes a model of "semicolon insertion" that implementors are supposed t
by groovy2shoes 15y ago
Because standard-compliant JavaScript implementations don't require them (ECMAScript describes a model of "semicolon insertion" that implementors are supposed to follow).
- underwater 15y agoNot required doesn't necessarily mean it's a good idea. If they were never needed I'd understand, but sometimes they are. I don't see the point in forcing the developer to make a conscious decision on whether to include a semicolon. Omitting semicolons also means that the correctness of a line of code is determined by the unrelated lines that follow.
- groovy2shoes 15y agoWhile the virtues of semicolon insertion are highly debatable, developers are permitted by the ECMAScript standard to write code that relies on it. A tool like JSMin should be aware of semicolon insertion. ricardobeat put it very well elsewhere in this thread: "It is a bug on JSMin. Minifying should never alter code behaviour."
- ars 15y agoActually JSMin is aware of semicolon insertion and handles it correctly. They just disagree on whether a semicolon gets inserted here.
- groovy2shoes 15y agoUnfortunately for JSMin, browsers attempt to implement at least the ECMAScript specification, not just "the good parts."
- deleted 15y ago[deleted]