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


Posted in Javascript onDecember 31, 2014

废话少说,直接上代码

<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中的操作符的用法了呢,有疑问就给我留言吧

Javascript 相关文章推荐
一段效率很高的for循环语句使用方法
Aug 13 Javascript
jquery设置text的值示例(设置文本框 DIV 表单值)
Jan 06 Javascript
jQuery.holdReady()使用方法
May 20 Javascript
浅谈jquery回调函数callback的使用
Jan 30 Javascript
js中利用tagname和id获取元素的方法
Jan 03 Javascript
javascript实现粘贴qq截图功能(clipboardData)
May 29 Javascript
基于Bootstrap实现的下拉菜单手机端不能选择菜单项的原因附解决办法
Jul 22 Javascript
jQuery拖拽通过八个点改变div大小
Nov 29 Javascript
微信小程序 弹幕功能简单实例
Feb 14 Javascript
小程序清理本地缓存的方法
Aug 17 Javascript
关于layui表单中按钮自动提交的解决方法
Sep 09 Javascript
利用JS如何获取form表单数据
Dec 19 Javascript
JavaScript中的逻辑判断符&amp;&amp;、||与!介绍
Dec 31 #Javascript
JavaScript中的eval()函数使用介绍
Dec 31 #Javascript
JSONP跨域GET请求解决Ajax跨域访问问题
Dec 31 #Javascript
JavaScript中的异常捕捉介绍
Dec 31 #Javascript
JavaScript中对象介绍
Dec 31 #Javascript
JavaScript中用字面量创建对象介绍
Dec 31 #Javascript
javascript设计模式之中介者模式Mediator
Dec 30 #Javascript
You might like
PHP Stream_*系列函数
2010/08/01 PHP
php对mongodb的扩展(初出茅庐)
2012/11/11 PHP
PHP中register_shutdown_function函数的基础介绍与用法详解
2017/11/28 PHP
javascript new一个对象的实质
2010/01/07 Javascript
AngularJS 日期格式化详解
2015/12/23 Javascript
Bootstrap实现响应式导航栏效果
2015/12/28 Javascript
input点击后placeholder中的提示消息消失
2016/01/15 Javascript
去除字符串左右两边的空格(实现代码)
2016/05/12 Javascript
JavaScript实现数组降维详解
2017/01/05 Javascript
图片上传之FileAPI与NodeJs
2017/01/24 NodeJs
Node.js 异步异常的处理与domain模块解析
2017/05/10 Javascript
jQuery实现div跟随鼠标移动
2020/08/20 jQuery
JavaScript递归算法生成树形菜单
2017/08/15 Javascript
js封装成插件_Canvas统计图插件编写实例
2017/09/12 Javascript
javascript算法之二叉搜索树的示例代码
2017/09/12 Javascript
浅谈Vue SSR中的Bundle的具有使用
2019/11/21 Javascript
Vue如何获取数据列表展示
2019/12/11 Javascript
js实现经典贪吃蛇小游戏
2020/03/19 Javascript
JavaScript计算出两个数的差值
2020/03/19 Javascript
使用 Jest 和 Supertest 进行接口端点测试实例详解
2020/04/25 Javascript
Python代码解决RenderView窗口not found问题
2016/08/28 Python
Python脚本实现自动将数据库备份到 Dropbox
2017/02/06 Python
查看python下OpenCV版本的方法
2018/08/03 Python
对numpy中的where方法嵌套使用详解
2018/10/31 Python
python读出当前时间精度到秒的代码
2019/07/05 Python
扩展Django admin的list_filter()可使用范围方法
2019/08/21 Python
详解Python 字符串相似性的几种度量方法
2019/08/29 Python
使用Python实现画一个中国地图
2019/11/23 Python
巴西购物网站:Estrela10
2018/12/13 全球购物
可口可乐唇膏:Lip Smackers
2019/08/27 全球购物
写给女朋友的检讨书
2014/01/28 职场文书
《美丽的黄昏》教学反思
2014/02/28 职场文书
市场推广策划方案
2014/06/02 职场文书
成本会计岗位职责
2015/02/03 职场文书
聘任证明怎么写
2015/03/02 职场文书
初中班主任培训心得体会
2016/01/07 职场文书