我的代码:
<SCRIPT type="text/javascript">
var num = 2.52;
alert(~~num);
</SCRIPT>
它给出的结果为2
。为什么要留下小数?有任何想法吗。
我的代码:
<SCRIPT type="text/javascript">
var num = 2.52;
alert(~~num);
</SCRIPT>
它给出的结果为2
。为什么要留下小数?有任何想法吗。
这是一个解释http://james.padolsey.com/javascript/double-bitwise-not/
按位非运算符 (~) 将获取其操作数,将其转换为 32 位整数,并将反转每个位,使每个 0 变为 1,反之亦然。
JavaScript 中的每个按位运算都会将其参数转换为有符号的 32 位整数。这将去掉你的小数。否则,您可能期望双按位 NOT 不会产生不变的参数。
只需删除波浪号 (~)。
<SCRIPT type="text/javascript">
var num = 2.52;
alert(num);
</SCRIPT>