Skip to content

Instantly share code, notes, and snippets.

@mutoo
Last active August 29, 2015 13:56
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mutoo/9003010 to your computer and use it in GitHub Desktop.
Save mutoo/9003010 to your computer and use it in GitHub Desktop.
$ = ~[];
/*
* $ = -1
*/
$ = {
___:++$, // $.___ = $ = 0
$$$$: (![] + "")[$], // $.$$$$ = "false"[0] = "f" unused
__$: ++$, // $.__ = $ = 1
$_$_: (![] + "")[$], // $.$_$_ = "false"[1] = "a"
_$_: ++$, // $._$_ = $ = 2
$_$$: ({} + "")[$], // $.$_$$ = "[object Object]"[2] = "b" unused
$$_$:($[$] + "")[$], // $.$$_$ = "undefined"[2] = "d" unused
_$$:++$, // $._$$ = $ = 3
$$$_: (!"" + "")[$], // $.$$$_ = "true"[3] = "e"
$__:++$, // $.$__ = $ = 4
$_$: ++$, // $.$_$ = $ = 5
$$__: ({} + "")[$], // $.$$__ = "[object Object]"[5] = "c" unused
$$_: ++$, // $.$$_ = $ = 6
$$$: ++$, // $.$$$ = $ = 7
$___: ++$, // $.$___ = $ = 8
$__$: ++$ // $.$__$ = $ = 9
};
/*
* build digit and data
*/
$.$_ =
($.$_ = $ + "")[$.$_$] + // $.$_ = "[object Object]"
// "[object Object]"[5] = "c"
($._$ = $.$_[$.__$]) + // $._$ = "[object Object]"[1] = "o"
($.$$ = ($.$ + "")[$.__$]) + // $.$$ = "undefined"[1] = "n"
((!$) + "")[$._$$] + // "false"[3] = "s"
($.__ = $.$_[$.$$_]) + // $.__ = "[object Object]"[6] = "t"
($.$ = (!"" + "")[$.__$]) + // $.$ = "true"[1] = "r"
($._ = (!"" + "")[$._$_]) + // $._ = "true"[2] = "u"
$.$_[$.$_$] + // "[object Object]"[5] = "c"
$.__ + // "t"
$._$ + // "o"
$.$; // "r"
/*
* $.$_ = "constructor"
*/
$.$$ =
$.$ + // "r"
(!"" + "")[$._$$] + // "true"[3] = "e"
$.__ + // "t"
$._ + // "u"
$.$ + // "r"
$.$$; // "n"
/*
* $.$$ = "return"
*/
$.$ =
($.___)[$.$_][$.$_]; // (0)["constructor"]["constructor"]
/*
* $.$ = function Function(){ [native code] }
*/
$.$( // Function(
$.$( // Function(
$.$$ + // "return
"\"" + // "\""
$.$_$_ + // "a"
(![] + "")[$._$_] + // "l"
$.$$$_ + // "e"
"\\" + // "\\"
$.__$ + // "1"
$.$$_ + // "6"
$._$_ + // "2"
$.__ + // "t"
"(\\\"\\" + // "(\\\"\\"
$.__$ + // "1"
$.__$ + // "1"
$.__$ + // "1"
"\\" + // "\\"
$.$__ + // "4"
$.___ + // "0"
(![] + "")[$._$_] + // "l"
$._$ + // "o"
"\\" + // "\\"
$.__$ + // "1"
$.$$_ + // "6"
$.$$_ + // "6"
$.$$$_ + // "e"
"\\" + // "\\"
$.$__ + // "4"
$.___ + // "0"
"\\" + // "\\"
$.__$ + // "1"
$.$$$ + // "7"
$.__$ + // "1"
$._$ + // "o"
$._ + // "u"
".\\\"\\" + // ".\\\"\\""
$.$__ + // "4"
$.___ + // "0"
")" + // ")"
"\"" // "\""
)() // )()
)(); // )();
/*
* Function(
* Function(
* "return\"ale\\162t(\\\"\\111\\40lo\\166e\\40\\171ou.\\\"\\40)\""
* )()
* )();
*/
@heyubingfeng
Copy link

这样js是怎么计算出来呢!可以告诉我一下吗

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment