2017-07-28 9 views
0

alert(++[[]][+[]]+[+[]]);のコードをjsで実行すると、10という警告が表示されます。なぜですか?このコードはどのようなロジックを使用していますか?なぜアラート(++ [[]] [+ []] + [+ []]); 10枚印刷しますか?

+0

これは、古い質問の近くに正確な複製です。おそらく見つけることは難しいでしょう。このスタイルはbtwでも "JSFuck"と呼ばれています。読んでください。 – Carcigenicate

+0

http://www.jsfuck.com/下部をお読みください。 – Carcigenicate

+0

@Carcigenicateああ、ありがとう – sakoaskoaso

答えて

3

チェックアウトjsfuck.comこれは例を示しており、それを使ってコードを書く方法を示しています。

基礎:

false  => ![] 
true  => !![] 
undefined => [][[]] 
NaN   => +[![]] 
0   => +[] 
1   => +!+[] 
2   => !+[]+!+[] 
10   => [+!+[]]+[+[]] 
Array  => [] 
Number  => +[] 
String  => []+[] 
Boolean  => ![] 
Function => []["filter"] 
eval  => []["filter"]["constructor"](CODE)() 
window  => []["filter"]["constructor"]("return this")() 
+3

[ライセンス](https://github.com/aemkei/jsfuck/blob/master/LICENSE.txt)_is_かなり許可されています問題ない。 – LarsW

関連する問題