Hacker News new | ask | show | jobs
by leeoniya 2448 days ago
it reduces code size.

d.getHours();d.getHours(); cannot be compressed but d[getHours]();d[getHours](); can compress to d[a]();d[a]().

do this enough times and you've saved 1kb.

you should see the kinds of compression hacks the Preact team does ;)

2 comments

Is that relevant with gzip enabled for transport? I'm assuming (possibly wrongly!) that such hacks do little in terms of parsing speed/AST complexity.

I suppose it's possible the js runtime might also benefit for some of these modifications?

Don't js compressors do this sort of optimization on their own?
if you enable a bunch of unsafe options they can do some of them, but they tend to err on the safe side when it comes to native built-in methods like these on Date objects.

also, some minifiers optimize for gzip size where the effect is not as drastic, but the browser still has to parse the un-gzipped source afterwards. it depends on the weighted costs built into each minifier.