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 相关文章推荐
验证用户是否修改过页面的数据的实现方法
Sep 26 Javascript
prototype Element学习笔记(篇二)
Oct 26 Javascript
基于jQuery的的一个隔行变色,鼠标移动变色的小插件
Jul 06 Javascript
轻松学习jQuery插件EasyUI EasyUI创建树形网络(1)
Nov 30 Javascript
bootstrap手风琴制作方法详解
Jan 11 Javascript
JavaScript实现水平进度条拖拽效果
Jan 18 Javascript
仿京东快报向上滚动的实例
Dec 13 Javascript
JavaScript原型对象、构造函数和实例对象功能与用法详解
Aug 04 Javascript
Angular(5.2-&gt;6.1)升级小结
Dec 27 Javascript
ES6数组与对象的解构赋值详解
Jun 14 Javascript
JavaScript实现移动小精灵的案例代码
Dec 12 Javascript
JavaScript实现班级抽签小程序
May 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中Cannot send session cache limiter 的问题的方法
2007/04/27 PHP
PHP实现微信公众平台音乐点播
2014/03/20 PHP
JS(jQuery)实现聊天接收到消息语言自动提醒功能详解【提示“您有新的消息请注意查收”】
2019/04/16 PHP
window.location.hash 属性使用说明
2010/03/20 Javascript
JavaScript 更严格的相等 [译]
2012/09/20 Javascript
js 三级关联菜单效果实例
2013/08/13 Javascript
javascript关于open.window子页面执行完成后刷新父页面的问题分析
2015/04/27 Javascript
快速学习jQuery插件 Form表单插件使用方法
2015/12/01 Javascript
BootStrap.css 在手机端滑动时右侧出现空白的原因及解决办法
2016/06/07 Javascript
JavaScript提高网站性能优化的建议(二)
2016/07/24 Javascript
javascript 判断页面访问方式电脑或者移动端
2016/09/19 Javascript
原生JS实现圣旨卷轴展开效果
2017/03/06 Javascript
JS排序之快速排序详解
2017/04/08 Javascript
详解使用angular的HttpClient搭配rxjs
2017/09/01 Javascript
vue-cli中的webpack配置详解
2017/09/25 Javascript
angular6.0使用教程之父组件通过url传递id给子组件的方法
2018/06/30 Javascript
JavaScript设计模式之代理模式简单实例教程
2018/07/03 Javascript
有关vue 开发钉钉 H5 微应用 dd.ready() 不执行问题及快速解决方案
2020/05/09 Javascript
vue实现登录拦截
2020/06/29 Javascript
[01:06:54]DOTA2-DPC中国联赛 正赛 SAG vs DLG BO3 第二场 2月28日
2021/03/11 DOTA
Python3读取UTF-8文件及统计文件行数的方法
2015/05/22 Python
Python使用Srapy框架爬虫模拟登陆并抓取知乎内容
2016/07/02 Python
浅谈python import引入不同路径下的模块
2017/07/11 Python
python实现在函数图像上添加文字和标注的方法
2019/07/08 Python
Python编程学习之如何判断3个数的大小
2019/08/07 Python
django框架创建应用操作示例
2019/09/26 Python
html2canvas把div保存图片高清图的方法示例
2018/03/05 HTML / CSS
NOTINO英国:在线购买美容和香水
2020/02/25 全球购物
模具专业推荐信
2013/10/30 职场文书
统计员岗位职责
2013/11/14 职场文书
日语专业毕业生求职信
2013/12/04 职场文书
圣诞节红领巾广播稿
2014/02/03 职场文书
高中班主任评语大全
2014/04/25 职场文书
环保小标语
2014/06/13 职场文书
保护地球的标语
2014/06/17 职场文书
MongoDB数据库常用的10条操作命令
2021/06/18 MongoDB