成都网站建设设计

将想法与焦点和您一起共享

取反javascript,取反符号

javascript 位运算符----取反

首先你要明白原码、反码、补码三个概念。

公司主营业务:网站建设、网站设计、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。创新互联是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。创新互联推出六安免费做网站回馈大家。

整数的都相等

负数的反码就是符号位除外,零变一,一变零

补码就是反码的基础上加1

加1是如下变化的,转十进制各位数就是8421

0001

0010

0011

0100

0101

0110

为什么在javascript里 o取反后是false ??

js规定非零非空即真。

undefined、null、0、NaN、""

除了上诉几个值在转换成布尔值会转成false外,其他任何对象任何值转成布尔值都是true

因为取反就是把对象转换成bool值的,所以会先把num转成布尔值,然后再取反得到true。

然后在弹出。。。

------------------------------------

不对啊,按这逻辑应该弹出true的。

javascript中的取反符号是什么

逻辑取反 !

false == !true

按位取反运算符: ~

~ 5 == - 6

javascript 按位取反例子

Javascript 按位取反运算符 (~) ,对一个表达式执行位非(求非)运算。如 ~1 = -2 ; ~2 = -3 ; ~99 = -100

复制代码代码如下:

result = ~ 【数字】

所有一元运算符(如 ~ 运算符)都按照下面的规则来计算表达式的值:

复制代码代码如下:

1、 如果应用于未定义的表达式或 null 表达式,则会引发一个运行时错误。

2、 将对象转换为字符串。

3、 如果可能,将字符串转换为数字。 否则,将引发运行时错误。

4、 布尔值被视为数字(如果为 false,则为 0;如果为 true,则为 1)。

运算符将应用于结果数字。

~ 运算符查看表达式的二进制表示形式的值,并执行位非运算。

表达式中的任何一位为 1,则结果中的该位变为 0。 表达式中的任何一位为 0,则结果中的该位变为 1。

下面的示例阐释了位非 (~) 运算符的用法,其中包含二进制表示十进制负数的,如果不熟悉这个请先看懂《十进制负数转换为二进制、八进制、十六进制》。

复制代码代码如下:

var temp = ~5;

/*

5 二进制 101,补满 32位

00000000000000000000000000000101

按位取反

11111111111111111111111111111010

由于32位开头第一个是1,所以这是一个负数,将二进制转换成负数,需要先反码

00000000000000000000000000000101

之后,再+1

00000000000000000000000000000110

转换成十进制为6,加上符号变成负数 -6

*/

alert(temp);

// 弹出【-6】


网站名称:取反javascript,取反符号
文章来源:http://chengdu.cdxwcx.cn/article/dsehioj.html