Skip to main content

Nealfanumerički JavaScript kod može se pisati samo pomoću slijedećih: znakova ()[]{}!+.

Što rade ti znakovi u JSu? Evo kratkog pregleda:

[] - pristup nizovima, svojstvima objekta, brojevima i elementu kao stringu
() - poziv funkcija i izbjegavanje greške
+ -- zbrajanje stringova i brojeva i pretvaranje elemente u brojeve
! -- logički NE, pretvara elemente u boolean
{} - vraća NaN te onaj ružan "[object Object]"

Kombinacijom ovih znakova, zbrajanjem, dodavanjem, heklanjem itd. može se dobiti bilo koji drugi string, izraz, pa i cijela skripta.

Primjerice, string "Hello, World" se piše ovako:

+((+{}+[])[+[]]+(+{}+[])[+!![]]+(+{}+[])[+[]])

Cijela stvar je fino opisana u tekstu Brainfuck beware: JavaScript is after you!, a ovdje se nalazi online demo u kojem možete provjeriti na što vaš kod liči nakon prolaska kroz ovaj opaki tretman.


(via)

Dodaj komentar
Ime:
e-mail:
WWW:
Izračunaj: 6 + 2
Komentar: