TypeScript 位运算符示例

TypeScript 位运算符示例

假设变量A = 2并且B = 3

运算符描述示例
&(按位与)它对其整数参数的每一位执行Boolean“”运算。(A&B)为 2
| (按位或)它对其整数参数的每一位执行Boolean“”运算。(A | B)为 3
^(按位异或)它对其整数参数的每一位执行Boolean“异或”运算。异或意味着操作数1为true或操作数2为true,但两者不能同时为true。(A ^ B)为 1
〜(按位取反)这是一个一元运算符,并通过取反操作数中的所有位进行操作。(〜B)为 -4
<<(左移)它通过在第二个操作数指定的位数将第一个操作数中的所有位向左移动。新位用零填充。将一个值左移一个位置相当于将其乘以2,移位两个位置相当于乘以4,依此类推。(A << 1)为 4
>>(右移)二进制右移运算符。左操作数的值是由右操作数指定的位数来向右移动。(A >> 1)为 1
>>>(无符号右移)这个运算符就像>>运算符一样,只不过在左边移入的位总是为零。(A >>> 1)为 1

示例

var a:number = 2;   // Bit presentation 10 
var b:number = 3;   // Bit presentation 11
 
var result; 
     
result = (a & b);     
console.log("(a & b) => ",result)
          
result = (a | b);          
console.log("(a | b) => ",result)  
       
result = (a ^ b);  
console.log("(a ^ b) => ",result);
 
result = (~b); 
console.log("(~b) => ",result);

result = (a << b); 
console.log("(a << b) => ",result); 

result = (a >> b); 
console.log("(a >> b) => ",result);

在编译时,它将生成以下JavaScript代码:

//Generated by typescript 1.8.10
var a = 2;   // Bit presentation 10
var b = 3;   // Bit presentation 11
var result;

result = (a & b);
console.log("(a & b) => ", result);

result = (a | b);
console.log("(a | b) => ", result);

result = (a ^ b);
console.log("(a ^ b) => ", result);

result = (~b);
console.log("(~b) => ", result);

result = (a << b);
console.log("(a << b) => ", result);

result = (a >> b);
console.log("(a >> b) => ", result);

上述程序的输出如下:

(a & b) =>  2 
(a | b) =>  3 
(a ^ b) =>  1 
(~b) =>  -4 
(a << b) =>  16 
(a >> b) =>  0
以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号

意见反馈
返回顶部