首页 > 编程语言 > 详细

Javascript 补位运算符

时间:2014-05-08 09:05:33      阅读:330      评论:0      收藏:0      [点我收藏+]

看到一个题目~~3.14得到是3,一下子有点蒙,之前在Javascript中完全没有见过~这个运算符。经查才知道~是补位运算符,但是跟原码反码补码又有点不同(在反码这一块,不记正负),好吧,大学的东西都还给老师了。

 

举个简单点的例子吧。~2 = -3,看看怎么得出这个结果的:

 

2的二进制是:

0000 0010

将它简单翻转:

1111 1101

 

接下我们看看怎么得出 -3。先给出3的二进制:

0000 0011

翻转:

1111 1100

加1:

1111 1101

 

因此,运算符~只是翻转所有比特位,再由机器来解析结果。

 

PS. 有个更便捷的方式来计算: ~n = -n-1

Javascript 补位运算符,布布扣,bubuko.com

Javascript 补位运算符

原文:http://www.cnblogs.com/Kingle/p/3714945.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!