Javascript 按位取反运算符 (~)
内容摘要
十进制负数转换为二进制、八进制、十六进制》。
复制代码 代码如下:var temp = ~5;/*5 二进制 101,补满 32位00000000000000000000000000000101按位取反11111111111111111111
复制代码 代码如下:var temp = ~5;/*5 二进制 101,补满 32位00000000000000000000000000000101按位取反11111111111111111111
文章正文
十进制负数转换为二进制、八进制、十六进制》。
var temp = ~5;
/*
5 二进制 101,补满 32位
00000000000000000000000000000101
按位取反
11111111111111111111111111111010
由于32位开头第一个是1,所以这是一个负数,将二进制转换成负数,需要先反码
00000000000000000000000000000101
之后,再+1
00000000000000000000000000000110
转换成十进制为6,加上符号变成负数 -6
*/
alert(temp);
// 弹出【-6】
复制代码 代码如下:
var temp = ~5;
/*
5 二进制 101,补满 32位
00000000000000000000000000000101
按位取反
11111111111111111111111111111010
由于32位开头第一个是1,所以这是一个负数,将二进制转换成负数,需要先反码
00000000000000000000000000000101
之后,再+1
00000000000000000000000000000110
转换成十进制为6,加上符号变成负数 -6
*/
alert(temp);
// 弹出【-6】
代码注释