javascript 操作符(~、&、|、^、<<、>>)使用案例

 更新时间:2014年12月31日 08:58:39   投稿:hebedich  
这篇文章主要介绍了javascript 操作符(~、&、|、^、<<、>>)使用案例,非常的全面,需要的朋友可以参考下

废话少说,直接上代码

复制代码 代码如下:

<script type="text/javascript">
        //javascript操作符
        //1、按位非~
        var num1=25;//
        var num2=~num1;//
        alert(num2)
        var num3=10;
        var num4=~num3;
        alert(num4)
        var num5=99;
        var num6=~num5;
        alert(num6)
        //说明:相信大家也已经看出来了按位~(NOT)的实现原理:
        //以num1、num2为讲解对象
        //第一步:先把num1转换成二进制
        //第二步:取得num1二进制的反码赋值给num2
        //第三步:在把num2换算成十进制数字
        //简单说明:就是把操作数的数值的负数减1
        //2、按位与 &(AND)
        var result=25 & 3;
        alert(result);//1
        //说明,就是把两数转换成二进制数字,按照一定的规则:
        //第一个数值的位       第二个数值的位     结果
        //  1                       1           1
        //  1                       0           0
        //  0                       1           0
        //  0                       0           0
        //简而言之,按位操作符的相对应的位都是1时则返回1,任何一位是0则返回0.
        //然后在得到的二进制转换成十进制数字
      //  25=0000 0000 0000 0000 0000 0000 0001 1001
      //  3= 0000 0000 0000 0000 0000 0000 0000 0011
      //  ------------------------------------------
      // AND=0000 0000 0000 0000 0000 0000 0000 0001
        //3、按位或 |(OR)
        var result=25 | 3;
        alert(result);//27
        //说明,就是把两数转换成二进制数字,按照一定的规则:
        //第一个数值的位       第二个数值的位     结果
        //  1                       1           1
        //  1                       0           1
        //  0                       1           1
        //  0                       0           0
        //简而言之,按位操作符的相对应的位有一位是1就返回1,而只有在两个位都是0的情况下才返回0.
        //然后在得到的二进制转换成十进制数字
        //  25=0000 0000 0000 0000 0000 0000 0001 1001
        //  3= 0000 0000 0000 0000 0000 0000 0000 0011
        //  ------------------------------------------
        //  OR=0000 0000 0000 0000 0000 0000 0001 1011
        //4、按位异或 ^(XOR)
        var result= 25 ^ 3;
        alert(result);//26
        //说明,就是把两数转换成二进制数字,按照一定的规则:
        //第一个数值的位       第二个数值的位     结果
        //  1                       1           0
        //  1                       0           1
        //  0                       1           1
        //  0                       0           0
        //简而言之,这个操作符(^)在两个数值对应位上只有一个1时才返回1,否则返回0.
        //然后在得到的二进制转换成十进制数字
        //  25=0000 0000 0000 0000 0000 0000 0001 1001
        //  3= 0000 0000 0000 0000 0000 0000 0000 0011
        //  ------------------------------------------
        // XOR=0000 0000 0000 0000 0000 0000 0001 1010
        //5、左移(<<)
        var oldNum=2;
        var newNum=oldNum << 5;
        alert(newNum)
        //说明,将2(二进制数码10)向左移5位结果就是1000000(二进制)等于64
        //注意,左移不会影响操作符的符号位,例如将-2左移5位就是-64
        //2=0000 0000 0000 0000 0000 0000 0000 0010
       //64=0000 0000 0000 0000 0000 0000 010 00000
        //6、有符号右移(>>)
        var oldNum=64;
        var newNum=oldNum >> 5;
       //64=0000 0000 0000 0000 0000 0000 010 00000
        //2=0000 0000 0000 0000 0000 0000 0000 0010
        alert(newNum)
    </script>

注释里解释的很清楚了,小伙伴们是否了解了javascript中的操作符的用法了呢,有疑问就给我留言吧

相关文章

  • js数组删除问题(splice和delete的用法)

    js数组删除问题(splice和delete的用法)

    这篇文章主要介绍了js数组删除问题(splice和delete的用法),具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-02-02
  • JavaScript快速排序

    JavaScript快速排序

    JavaScript快速排序...
    2007-01-01
  • 微信小程序实现人脸检测功能

    微信小程序实现人脸检测功能

    这篇文章主要为大家详细介绍了微信小程序实现人脸检测功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-05-05
  • 原生js三级联动的简单实现代码

    原生js三级联动的简单实现代码

    下面小编就为大家带来一篇原生js三级联动的简单实现代码。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-06-06
  • 使用javascript实现一个在线RGB颜色转换器

    使用javascript实现一个在线RGB颜色转换器

    目前已经有很多网页版在线小工具,之前很多窗体化的工具也逐渐网页化,比如:PS画图软件,也都能直接网页化进行设计,由于自己实际项目经常会用到颜色转换,所以直接自己开发个简单版的在线颜色转换小工具,需要的朋友可以参考下
    2024-01-01
  • JavaScript中 ES6变量的结构赋值

    JavaScript中 ES6变量的结构赋值

    这篇文章主要介绍了JS 中ES6变量的结构赋值的相关资料,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-07-07
  • jsMind通过鼠标拖拽的方式调整节点位置

    jsMind通过鼠标拖拽的方式调整节点位置

    这篇文章主要介绍了jsMind通过鼠标拖拽的方式调整节点位置的方法,十分的简单实用,推荐给有需要的小伙伴参考下。
    2015-04-04
  • 微信小程序日历效果

    微信小程序日历效果

    这篇文章主要为大家详细介绍了微信小程序日历效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-12-12
  • js判断移动端横竖屏视口检测实现的几种方法

    js判断移动端横竖屏视口检测实现的几种方法

    最近做歌一个小项目,但是要放到我们的app上,然而需要横竖屏使用不同的样式,本文就来介绍一下js判断移动端横竖屏视口检测实现的几种方法,感兴趣的可以了解一下
    2021-07-07
  • JS实现横向轮播图(中级版)

    JS实现横向轮播图(中级版)

    这篇文章主要为大家详细介绍了JS实现横向轮播图的中级版,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-01-01

最新评论