'x << ~y' 在JavaScript中代表什么意思?
我了解位运算符SHIFT
的作用:
x << y 等同于 x * 2y
而波浪线符号~
则表示:
~x AS -(x+1)
所以,我假设如下:
5 << ~3 AS 5 * 2-4 或 5 * Math.pow(2, -4)
它应该得出 0.3125
。
但是,当我运行 5 << ~3
时,结果为 1342177280
。
这种操作组合为什么会产生 1342177280
而不是 0.3125
?请详细说明步骤和原因。
(这个问题类似于 Stack Overflow 的问题 What are bitwise operators?,问的是位操作符中的移动操作符 SHIFT。)
!--
和<<~
之后是什么?我应该发布“^<<!~
操作符是什么?” - dhein!~--this[](...[this[$]],_=>..._)
这段代码中使用了一些JavaScript语法,其中包含一些操作数组和函数的元素。更具体地说,该代码对数组进行索引并调用一个匿名函数,然后对结果进行减一和按位取反的操作。最后,返回的结果将被转换为布尔值,并取其逻辑非。由于缺少上下文信息,无法准确判断此代码的目的和功能。 - azz>>~
它看起来像一个人.....他可能在做什么呢....我觉得我有责任问SO“这个人操作符是做什么的?”x'D - dhein