Skip to content
JSFuck

Official website (http://www.jsfuck.com/)

EntityQ25304718· pop 7· linked from 15 articles

JSFuck is an esoteric subset of JavaScript, where code is written using only six characters: [, ], (, ), !, and +. The name is derived from Brainfuck, an esoteric programming language that also uses a minimalistic alphabet of only punctuation. Unlike Brainfuck, which requires its own compiler or interpreter, JSFuck is valid JavaScript code, meaning that JSFuck programs can be run in any web browser or engine that interprets JavaScript. JSFuck is able to recreate all JavaScript functionality using such a limited set of characters because JavaScript allows the evaluation of any expression as any

Official website

JSFuck - Write any JavaScript with 6 Characters: []()!+

JSFuck is an esoteric and educational programming style based on the atomic parts of JavaScript. It uses only six different characters to execute code.

jsfuck.com

Link to the official site · 1,688 chars · not written by Vinony

Wikidata facts

Official website
www.jsfuck.com
Show 2 more facts
file extension
js
media type
text/javascript

via Wikidata · CC0

~9 min read

Article

11 sections
Contents
  • History
  • Encoding methods
  • Numbers
  • Letters
  • Example: Creating the letter "a"
  • Other constructs
  • Character table
  • Security
  • See also
  • References
  • External links

JSFuck is an esoteric subset of JavaScript, where code is written using only six characters: [, ], (, ), !, and +. The name is derived from Brainfuck, an esoteric programming language that also uses a minimalistic alphabet of only punctuation. Unlike Brainfuck, which requires its own compiler or interpreter, JSFuck is valid JavaScript code, meaning that JSFuck programs can be run in any web browser or engine that interprets JavaScript. JSFuck is able to recreate all JavaScript functionality using such a limited set of characters because JavaScript allows the evaluation of any expression as any type.

== History == In July 2009, Yosuke Hasegawa created a web application called jjencode which could encode arbitrary JavaScript into an obfuscated form utilizing only the 18 symbols []()!+,\"$.:;_{}~=. In January 2010, an informal competition was held in the "Obfuscation" forum of the sla.ckers.org web application security site to come up with a way to get the minimum number of characters required down to less than eight: []()!+,/. Contributors to the thread managed to eliminate the need for the , and / characters. As of March 2010, an online encoder called JS-NoAlnum was available which utilized only the final set of six characters. By the end of 2010, Hasegawa made a new encoder available named JSF*ck which also used only the minimum six characters. In 2012, Martin Kleppe created a "jsfuck" project on GitHub, and a JSFuck.com website with a web app using that implementation of the encoder.

Available in 7 languages

via Wikidata sitelinks · CC0

Connections

Categories