15 comments

[ 4.4 ms ] story [ 43.5 ms ] thread
Curious as to how 84 bytes were shaved since the previous posting. https://news.ycombinator.com/item?id=9941182
For wider browser support I've always relied on LABjs. It's been around for ages and has to be among the most stable JS libraries out there despite having to deal with all those browser quirks.

http://labjs.com/

For what purpose?

Just stop layering bloat.

I just shaved off another 3 bytes so LoadJS is now 503 bytes (minified + gzipped). HN - If you see a way to get below 500 bytes please let me know!

https://github.com/muicss/loadjs/blob/master/src/loadjs.js

Using ES5 features? Because arrow functions would make it smaller.

Also using an if/else instead of continue saves 4 bytes.

Using arrow functions shaves off another 2 bytes.

(Gzipped that's 489 bytes.)[0]

[0] - https://closure-compiler.appspot.com/code/jscde34e44897623a8...

That's a good suggestion but it looks like the minifier removes "continue" automatically: https://raw.githubusercontent.com/muicss/loadjs/master/dist/...

Arrow functions would be great but then we'd have to drop support for browsers that don't support ES6.

It seems running your original code through the closure compiler shaves it down to 488 max.

The closure compiler doesn't respect arrow functions, so I'm assuming that'd have to be changed manually.

(comment deleted)
Nice work would love to see it delivered via CDNjs