码迷,mamicode.com
首页 > 其他好文 > 详细

sb 讲解 (!(~+[])+{})[--[~+""][+[]]*[~+[]] + ~~!+[]]+({}+[])[[~!+[]]*~+[]]

时间:2015-01-21 18:04:29      阅读:121      评论:0      收藏:0      [点我收藏+]

标签:

代码:(!(~+[])+{})[--[~+""][+[]]*[~+[]] + ~~!+[]]+({}+[])[[~!+[]]*~+[]]

输出sb。

分段解析:

   首先解析s:

    (!(~+[])+{})  --> 输出 "false[object Object]" 

    由于 ! 优先级 高于 +, 所有先算 !(~+[]), 而 ~+[] ,根据标准。。解释器会把 [] 转成 0;从而得到 ~0. =-1,所以 (~+[])=-1,而 !(-1) =false;

    从而得到 (false+{}). 标准规定默认相加会调用toString 操作。相当于 "false"+"[object Object]"; 

    下面解析 索引位置:[--[~+""][+[]]*[~+[]] + ~~!+[]]

    未完待续。。。。。

    

 

sb 讲解 (!(~+[])+{})[--[~+""][+[]]*[~+[]] + ~~!+[]]+({}+[])[[~!+[]]*~+[]]

标签:

原文地址:http://www.cnblogs.com/Mr-Joe/p/4239460.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!