
You can convert any Javascript code into these characters:
()[]{}!+
and only these characters.
Here's how:
Numbers
We can get 0 by ...
For further actions, you may consider blocking this person and/or reporting abuse
Reminds me of Brainfuck for sure, I love these sort of little esoteric-toy-language thingies!
Yeah, the 6-character version is actually called JSFuck!
You crack me up, I can't believe you said it reminds you of Brainf**k. You got jokes. 😂 😂
i mean, i sometimes have difficulties reading code but this line:
is this a virus injection in js 😂
Hahaha, looks like it! 😂 It's so fun
yeah, imagine you have to debug entire function written like this. good luck with that 😂😌
No problem! I know, I know, we'll use sourcemaps 😜😂🤣
What the F**k is that!! 👿
I've discovered that actually is a language ! Anyway nice article
F**k JS... I mean JSF**k. 🤪
I'm too hungover for this...
I believe you only need 6 characters -
()+[]!
There's a converter to encode normal javascript here
Yeah! I mentioned this at the end of the article. It's very complicated and I don't know how it works, so I went for the less complex 8 character one 😅
brilliant! lol
I tried the link for JSF... and converted the line: console.log("Hello");
I pasted the result in a file and executed it with node and got this...
C:\Users\MrMaint\ts>node a.js
C:\Users\MrMaint\ts\a.js:1
[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]][([][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]]((!![]+[])[+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+([][[]]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+!+[]]+(+[![]]+[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]])[+!+[]+[+!+[]]]+(!![]+[])[!+[]+!+[]+!+[]]+(+(!+[]+!+[]+!+[]+[+!+[]]))[(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]])[+!+[]+[+[]]]+([]+[])[([][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]]+[
TypeError: Cannot read property 'eundefinednstruetundefinedr' of undefined
at Object. (C:\Users\MrMaint\ts\a.js:1:69)
at Module._compile (module.js:570:32)
at Object.Module._extensions..js (module.js:579:10)
at Module.load (module.js:487:32)
at tryModuleLoad (module.js:446:12)
at Function.Module._load (module.js:438:3)
at Module.runMain (module.js:604:10)
at run (bootstrap_node.js:394:7)
at startup (bootstrap_node.js:149:9)
at bootstrap_node.js:509:3
What am I missing here???
Awesome post, very nice explained! 👏🏻👏🏻
Thank you!
Just great information you have shared. Thanks a lot :). After reading this post. I feel like I know nothing about JS. :(.
Nooo don't think that way! This post is just crazy haha
yeah. but this is damn good information.
Super cool article there you have my unicorn vote. Correct me if I am wrong but where it says 'The third character here would be p.' I believe you meant 'The fourth character...' because the fourth characters on http/https is p.
Yes you are correct!
Hogwarts will be sending you a letter shortly because this is some of that Tom Riddle magic
That's like the anti minifier . compiling normal js to this notation actually makes the codes bigger. Very nice !
Hahahhaa... JS fvck
Thanks for this amazing tutorial.
Would this be at all useful for obfuscation?
Yeah it could be!
More compact implementation for some chars here: github.com/TiTi/jswtf/blob/master/...