Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1923140
  • 博文数量: 45
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 515
  • 用 户 组: 普通用户
  • 注册时间: 2019-08-05 16:22
文章分类

全部博文(45)

文章存档

2020年(4)

2019年(41)

我的朋友

分类: JavaScript

2019-09-02 10:20:55

JavaScript按位运算符

操作符 名称 描述
& 按位与 如果两个位均为1,则将每个位设置为1
| 按位或 如果两位中的一位为1,则将每个位设置为1
^ 按位异或 如果两个位中只有一个为1,则将每个位设置为1
~ 反转所有位
<< 零填充左移 通过从右侧推入零来左移,让最左边的位掉下来
>> 算术右移 通过从左侧推入最左边的位的副本来向右移动,并使最右边的位脱落
>>> 零填充右移 通过从左侧推入零来向右移动,并让最右边的位脱落

例子:

操作 结果 等价 结果
5 & 1 1 0101 & 0001 0001
5 | 1 5 0101 | 0001 0101
~ 5 10 ~0101 1010
5 << 1 10 0101 << 1 1010
5 ^ 1 4 0101 ^ 0001 0100
5 >> 1 2 0101 >> 1 0010
5 >>> 1 2 0101 >>> 1 0010

按位与

当对一对位执行按位与操作时,如果两个位都为1,则返回1。

一位操作例子:

操作 结果
0&0 0
0&1 0
1&0 0
1&1 1

按位或

当对一对位执行按位或操作时,如果其中至少有一个位为1,则返回1,否则返回0:

一位操作例子:

操作 结果
0|0 0
0|1 1
1|0 1
1|1 1

按位异或

当对一对位执行按位异或操作时,如果位不同(相异而或),则返回1:

一位操作例子:

操作 结果
0^0 0
0^1 1
1^0 1
1^1 0

阅读(2362) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~