为什么节点编译比这种方式更大?

时间:2015-10-31 21:51:05

标签: javascript compilation logic

只是为了测试我输入一些'大于'..'或'..>< | ..我得到了以下结果:

  

11< 2 | 14 - > 14

     

11< 13 | 14 - > 15

     

11< 12 | 14 - > 15

     

11< 12 | 17 - > 17

     

11< 16 | 17 - > 17

     

15< 16 | 17 - > 17

     

15< 14 | 17 - > 17

为什么第二和第三块15?

1 个答案:

答案 0 :(得分:3)

  

11< 13 | 14 - > 15

11<13|14表示:(11 < 13 ? 1 : 0) | 14|是“二进制或”。 因此,您最终要做的是1 | 14 15

14的二进制表示是8 + 4 + 2 = 1110,并且用1取代它会产生1111,即8 + 4 + 2 + 1 = 15