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 相关文章推荐
JQuery 操作select标签实现代码
May 14 Javascript
js+css在交互上的应用
Jul 18 Javascript
JQuery通过Ajax提交表单并返回结果
Jul 31 Javascript
jQuery 淡出一个图像到另一个图像的实现代码
Jun 12 Javascript
怎么选择Javascript框架(Javascript Framework)
Nov 22 Javascript
css3元素简单的闪烁效果实现(html5 jquery)
Dec 28 Javascript
js实现接收表单的值并将值拼在表单action后面的方法
Nov 23 Javascript
jQuery弹出遮罩层效果完整示例
Sep 13 Javascript
简单实现Vue的observer和watcher
Dec 21 Javascript
Angularjs 手写日历的实现代码(不用插件)
Oct 18 Javascript
js中async函数结合promise的小案例浅析
Apr 14 Javascript
vue ssr服务端渲染(小白解惑)
Nov 10 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
外媒评选出10支2020年最受欢迎的Dota2战队
2021/03/05 DOTA
我的论坛源代码(四)
2006/10/09 PHP
php根据操作系统转换文件名大小写的方法
2014/02/24 PHP
ThinkPHP的模版中调用session数据的方法
2014/07/01 PHP
php字符串过滤strip_tags()函数用法实例分析
2019/06/24 PHP
Yii框架数据库查询、增加、删除操作示例
2019/10/14 PHP
js中将URL中的参数提取出来作为对象的实现代码
2011/08/16 Javascript
jQuery的$.proxy()应用示例介绍
2014/04/03 Javascript
JS实现搜索框文字可删除功能
2016/12/28 Javascript
jQuery获取单选按钮radio选中值与去除所有radio选中状态的方法
2017/05/20 jQuery
微信小程序数字滚动插件使用详解
2018/02/02 Javascript
elementui的默认样式修改方法
2018/02/23 Javascript
iview tabs 顶部导航栏和模块切换栏的示例代码
2019/03/04 Javascript
详解json串反转义(消除反斜杠)
2019/08/12 Javascript
vue设置导航栏、侧边栏为公共页面的例子
2019/11/01 Javascript
javascript设计模式 ? 桥接模式原理与应用实例分析
2020/04/13 Javascript
vue-cli4.0多环境配置变量与模式详解
2020/12/30 Vue.js
Python中函数的多种格式和使用实例及小技巧
2015/04/13 Python
Python实现二维有序数组查找的方法
2016/04/27 Python
Python基于回溯法子集树模板解决马踏棋盘问题示例
2017/09/11 Python
pandas数据框,统计某列数据对应的个数方法
2018/04/11 Python
django富文本编辑器的实现示例
2019/04/10 Python
超简单的Python HTTP服务
2019/07/22 Python
利用python计算时间差(返回天数)
2019/09/07 Python
python两个_多个字典合并相加的实例代码
2019/12/26 Python
python微信公众号开发简单流程实现
2020/03/09 Python
python+adb命令实现自动刷视频脚本案例
2020/04/23 Python
Pandas中两个dataframe的交集和差集的示例代码
2020/12/13 Python
Python实现曲线拟合的最小二乘法
2021/02/19 Python
利用html5的websocket实现websocket聊天室
2013/12/12 HTML / CSS
机械设计及其自动化专业推荐信
2013/10/31 职场文书
行政人事专员岗位职责
2014/03/05 职场文书
新学期决心书
2014/03/11 职场文书
公证书标准格式
2014/04/10 职场文书
教师党员批评与自我批评发言稿
2014/10/15 职场文书
2014年档案管理工作总结
2014/11/17 职场文书