以下是JavaScript按位运算符的示例。
例子:
<
script>
var a = 4;
var b = 1;
document.write( "A &
B = " + (a &
b) + '<
br>
' );
document.write( "A | B = " + (a | b) + '<
br>
' );
document.write( "~A = " + (~a) + '<
br>
' );
<
/script>
输出如下:
A &
B = 0A | B = 5~A = -5
像C, C ++, Java, Python和其他各种语言一样, JavaScript也支持按位操作。在JavaScript中, 数字存储为64位浮点数, 但对32位二进制数执行按位运算, 即执行位运算JavaScript将数字转换为32位二进制数(签名)并执行操作, 然后将结果转换回64位数字。
以下是JavaScript中使用的一些按位逻辑运算符。
【JavaScript按位运算符用法指南】按位AND(&):
它是一个二进制运算符, 即接受两个操作数。如果两个位都设置为1(即1), 则按位与(&)返回1, 其他情况下则为0。
一种 | 乙 | 输出(A&B) |
---|---|---|
0 | 0 | 0 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 1 |
它是一个二进制运算符, 即接受两个操作数。如果设置了任何操作数(即1), 则按位OR(|)返回1;在其他情况下, 则返回0。
一种 | 乙 | 输出(A | B) |
---|---|---|
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 1 |
它是一个二进制运算符, 即接受两个操作数。如果两个操作数都不相同, 则按位XOR(^)将返回1, 而在其他情况下则返回0。
一种 | 乙 | 输出(A ^ B) |
---|---|---|
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 0 |
它是一元运算符, 即接受单个操作数。按位NOT(?)翻转位, 即0变为1并且1变为0。
一种 | 输出(?A) |
---|---|
0 | 1 |
1 | 0 |
左移(< < ):
它是一个二进制运算符, 即它接受两个操作数。第一个运算符指定数字, 第二个运算符指定要移位的位数。每个位向左移动, 从右侧添加0位。左侧的多余位将被丢弃。
一种 | 6(00000000000000000000000000000110) |
---|---|
乙 | 1(00000000000000000000000000000001) |
输出(A < < B) | 12(00000000000000000000000000001100) |
它是一个二进制运算符, 即它接受两个操作数。第一个操作数指定数字, 第二个操作数指定要移位的位数。每个位向右移动, 溢出位被丢弃。这是符号传播, 因为从左边开始添加的位取决于数字的符号(即, 如果为正则为0, 如果为负则为1)
一种 | 6(00000000000000000000000000000110) |
---|---|
乙 | 1(00000000000000000000000000000001) |
输出(A > > B) | 3(00000000000000000000000000000011) |
它是一个二进制运算符, 即它接受两个操作数。第一个操作数指定数字, 第二个操作数指定要移位的位数。每个位向右移动, 溢出位被丢弃。从左侧添加0位, 因此其零填充向右移位。
一种 | 6(00000000000000000000000000000110) |
---|---|
乙 | 1(00000000000000000000000000000001) |
输出(A > > > B) | 3(00000000000000000000000000000011) |
<
script>
var a = 6;
var b = 1;
// AND Operation
document.write( "A &
B = " + (a &
b) + '<
br>
' );
// OR operation
document.write( "A | B = " + (a | b) + '<
br>
' );
// NOT operation
document.write( "~A = " + (~a) + '<
br>
' );
// Sign Propagating Right Shift
document.write( "A >
>
B = " + (a >
>
b) + '<
br>
' );
// Zero Fill Right Shift
document.write( "A >
>
>
B = " + (a >
>
>
b) + '<
br>
' );
// Left Shift
document.write( "A <
<
B = " + (a <
<
b) + '<
br>
' );
<
/script>
输出如下:
A &
B = 0A | B = 7~A = -7A >
>
B = 3A >
>
>
B = 3A <
<
B = 12
支持的浏览器:
- 谷歌浏览器
- IE浏览器
- 火狐浏览器
- 苹果Safari
- 歌剧
推荐阅读
- C++标准模板库(STL)介绍和指南
- 功能与非功能需求详细介绍
- 在不使用GCD的情况下查找两个以上(或数组)数字的LCM
- C中的输入输出系统调用创建,打开,关闭,读取,写入
- DNS欺骗或DNS缓存中毒简要介绍
- U盘识别不了,本文教您U盘识别不了怎样修好
- win10u盘安装,本文教您怎样用U盘安装win10
- u盘无法打开,本文教您U盘打开不了常用修好办法
- 联想电脑怎样进入bios,本文教您联想笔记本bios怎样设置U盘打开