何を今更、って感じですが書きたくなったので許してください。
元ネタ=> https://codeiq.jp/ace/cielavenir/q431
僕が書いたらこんな風になりました。
var
zero = +String.prototype,
one = -~zero,
two = one << one,
four = one << two,
hundred = ({} + zero).charCodeAt(two) + two;
console.log([
(two << four) * two + (two << two),
hundred + one,
hundred + (two << two),
hundred + two * two * two,
Number(Array() + one + one + one),
two << four,
hundred - (one + two << two | one),
hundred + ((one << two << one) | two | one),
hundred + ((one << four) - one ^ one),
hundred + parseInt((one << four) + (two << two) - two, two | one),
hundred
].map(function (x) {
return String.fromCharCode(x);
}).join(Array().join()));
実行環境はnode.jsですがブラウザでもconsole
オブジェクトがあれば動きそうな気がします。
変数名が分かりやすいのでそんなに難しくないと思います。
"l"
が三回も出てくるので別の表現にするのが面倒になって3進数とか使いましたが…。