为什么打印出10张?

这个问题在这里已经有了答案:

  • 为什么++ [[]] [+ []] + [+ []]返回字符串“10”? 8个答案

  • 您只能使用六个不同的字符来编写和执行任何JS代码。 例如,这里是一些JS构造的表示

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

    在JS F * ck上的证明以及为什么++ [[]] [+ []] + [+ []]返回字符串“10”?

    链接地址: http://www.djcxy.com/p/48051.html

    上一篇: Why does this print out 10?

    下一篇: JavaScript Expression