Code Golfing Tips & Tricks: How to Minify your JavaScript Code

Created on 14 августа 2022 г..

Достаточно большой читшит разных трюков для написания программ, где размер кода критично важен. Например, это разные челленджи вида “напиши свой твиттер\игру\блог и умести его в 3кб кода”. По сути, весь читшит - это инструкция как самому стать минификатором кода. Некоторые хаки очень даже элегантны, если можно применить к ним такое слово.

Ниже представлены примеры кода, которые мне особенно понравились

в setTimeout и setInterval можно передавать строки, вместо функций

setInterval(function(){console.log("z")},100) // before
setInterval('console.log("z")',100) // after

Обмен значений переменных

var a=1,b=2,c;c=a;a=b;b=c // before
var a=1,b=2;a=[b,b=a][0]  // after
var a=1,b=2;a=b^a^(b=a)   // after - not as useful, but can come in handy

Use []._ instead of undefined ""._, 1.._ and 0[0] also work, but are slower. void 0 is faster than undefined but longer than the alternatives.

Более короткий вариант Math.round

Math.round(a) // before
a+.5|0        // after

Является ли x - функцией?

Instead of using typeof x==‘function’, you can use /^f/.test(typeof x).

By using this site, you agree that you have read and understand its Privacy Policy.