资讯专栏INFORMATION COLUMN

js中的按位运算

cnio / 2884人阅读

摘要:中的数字也是按照的标准存储的,按位存储,但是操作符不会直接去操作位,会将位数转换成位整数操作,完成运算后再转换成位,这个位对用户来说是透明的。虽然经常写,但是还是对一些按位运算比较迷茫。

javascript中的数字也是按照IEEE754的标准存储的,按64位存储,但是操作符不会直接去操作64位,会将64位数转换成32位整数操作,完成运算后再转换成64位,这个64位对用户来说是透明的。
虽然经常写js,但是还是对一些按位运算比较迷茫。对于32位有符号整数,最高位为符号,正数最高位0,负数最高位1,负数按二进制补码存储。NaN和Inifinity在位操作中都被当成0对待

按位取反
0000 0000 0000 0000 0000 0000 0000 1010
=>
1111 1111 1111 1111 1111 1111 1111 0101 (负数)
=>
-0000 0000 0000 0000 0000 0000 0000 1011

对x取反相当于<=>-x-1

按位与&

按照1&1为1,其它都为0

按位或|

按照0|0为0,其它都为1

按位亦或^

按照0^0为1,1^1为1,其它都为0

左移<<

右边的空位用0补齐

右移>>

左边的空位正数用0补齐,负数用1补齐

无符号右移>>>

左边的空位用0补齐

typeof

typeof用来判断一个变量的类型。

typeof null => "object"
typeof number => "number"
typeof object => "object"
typeof function => "function"
typeof array => "object"
typeof 正则表达式 => 老版本safari和chrome返回"function",其它情况返回"object"

注意:

console.log(a) // a未定义会报错
typeof a // a未定义,返回undefined

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/90780.html

相关文章

  • 你不知道的按位运算

    摘要:相信大家都知道二进制数按位运算的规则来看一些简单的例子单纯的二进制位之间的这些运算相当简单,但对我们实际编程并没有直接帮助,因为编程过程中需要的经常是数字间的运算,比如。 先来看LeetCode上的Divide Two Integers题目要求: Divide two integers without using multiplication, division and mod ope...

    luoyibu 评论0 收藏0
  • 【译】 JavaScript中按位操作符的有趣应用

    摘要:检查设定位操作符还有一些其他有用的位屏蔽应用。请注意,位掩码中的位将有效地关闭十进制数中的相应位,因为。 原文标题:Interesting use cases for JavaScript bitwise operators原文地址:https://blog.logrocket.com/in... 本文首发于公众号:符合预期的CoyPan JavaScript提供了几种运算符,可以对...

    oneasp 评论0 收藏0
  • websocket 二进制数据传输基础准备工作

    摘要:例如,十进制数,用二进制表示则为。按位操作符操作数字的二进制形式,但是返回值依然是标准的数值。不同为真相同为假二进制按位异或运算从左到右按位非为真,为假对每一项进行非操作,遇真则假,遇假则真。 二进制与十六进制 二进制用 0 1 表示 2= 10十六进制 前缀0x 用0123456789ABCDEF表示 2= 0x2二进制与十六进制的转换十六进制的每位 等于二进制的四位 十六进制 0x...

    LeviDing 评论0 收藏0
  • 001_第一部分_[Python基础]

    摘要:一基础数据类型原始类型复合类型由其他原始类型组合起来的类型运算符和表达式算术运算符加减乘除取模幂地板除的除位运算符二进制之间的运算转换成二进制数将二进制转换成十进制按位与都为才为按位或存在即为按位异或相同的为不同的为按位取反正数的补码,反 一.python基础: 数据类型: 原始类型: int float byte 复合类型: 由其他原始类型组合...

    WrBug 评论0 收藏0
  • java学习笔记-位运算

    摘要:位运算符位运算符与逻辑运算符类似,但是位运算符是对每一位进行计算。上面说到的按位取反加,就可以写成移位运算符右移与无符号右移相似,是将整数所有的位向右移动位,抛弃个低位。空出来的低位用的最高位值补全。 定点数据再计算机中的表示方法 例如一个整数类型(int)的数据在内存中占用了32位。通俗的讲就是在内存中挖了32个坑,每一个坑里可以放一个0或者1. 00000000 11111111 ...

    galaxy_robot 评论0 收藏0

发表评论

0条评论

cnio

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<