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 相关文章推荐
javascript delete 使用示例代码
Mar 29 Javascript
jBox 2.3基于jquery的最新多功能对话框插件 常见使用问题解答
Nov 10 Javascript
JS+CSS制作DIV层可(最小化/拖拽/排序)功能实现代码
Feb 25 Javascript
浅谈javascript原型链与继承
Jul 13 Javascript
jQuery实现移动端滑块拖动选择数字效果
Dec 24 Javascript
获取input标签的所有属性的方法
Jun 28 Javascript
浅析JavaScript中break、continue和return的区别
Nov 30 Javascript
jquery根据name取得select选中的值实例(超简单)
Jan 25 jQuery
JS中的回调函数实例浅析
Mar 21 Javascript
vue实现的网易云音乐在线播放和下载功能案例
Feb 18 Javascript
vue开发中遇到的问题总结
Apr 07 Javascript
vue项目中使用bpmn-自定义platter的示例代码
May 11 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
第八节 访问方式 [8]
2006/10/09 PHP
php实现文件下载更能介绍
2012/11/23 PHP
PHP实现基于图的深度优先遍历输出1,2,3...n的全排列功能
2017/11/10 PHP
PHP连接MySQL数据库操作代码实例解析
2020/07/11 PHP
JsDom 编程小结
2011/08/09 Javascript
使用JavaScript判断图片是否加载完成的三种实现方式
2014/05/04 Javascript
JS实现仿京东淘宝竖排二级导航
2014/12/08 Javascript
JS获取Table中td值的方法
2015/03/19 Javascript
概述如何实现一个简单的浏览器端js模块加载器
2016/12/07 Javascript
AngularJS基于ngInfiniteScroll实现下拉滚动加载的方法
2016/12/14 Javascript
详解jQuery中基本的动画方法
2016/12/14 Javascript
微信小程序 Nginx环境配置详细介绍
2017/02/14 Javascript
JavaScript实现获取用户单击body中所有A标签内容的方法
2017/06/05 Javascript
jquery dataTable 后台加载数据并分页实例代码
2017/06/07 jQuery
使用vue构建移动应用实战代码
2017/08/02 Javascript
jQuery控制input只能输入数字和两位小数的方法
2019/05/16 jQuery
Vue-CLI 项目在pycharm中配置方法
2019/08/30 Javascript
解决vue自定义全局消息框组件问题
2019/11/22 Javascript
vue项目配置使用flow类型检查的步骤
2020/03/18 Javascript
Python中operator模块的操作符使用示例总结
2016/06/28 Python
python互斥锁、加锁、同步机制、异步通信知识总结
2018/02/11 Python
python3 unicode列表转换为中文的实例
2018/10/26 Python
对python以16进制打印字节数组的方法详解
2019/01/24 Python
春节到了 教你使用python来抢票回家
2020/01/06 Python
Django与pyecharts结合的实例代码
2020/05/13 Python
Python脚本如何在bilibili中查找弹幕发送者
2020/06/04 Python
Python装饰器结合递归原理解析
2020/07/02 Python
详解css3中 text-fill-color属性
2019/07/08 HTML / CSS
Bobbi Brown芭比波朗美国官网:化妆师专业彩妆保养品品牌
2016/08/18 全球购物
优质美利奴羊毛袜,不只是徒步旅行:Darn Tough Vermont
2018/11/05 全球购物
台湾东南旅游社网站:东南旅游
2019/02/11 全球购物
Furla官网:意大利著名的皮革品牌
2019/08/06 全球购物
志愿者服务感言
2014/02/27 职场文书
学校校庆演讲稿
2014/05/22 职场文书
2015年中秋放假通知范文
2015/08/18 职场文书
正则表达式拆分url实例代码
2022/02/24 Java/Android