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中get和post的简单实例
Feb 04 Javascript
node中socket.io的事件使用详解
Dec 15 Javascript
IE8中动态创建script标签onload无效的解决方法
Dec 22 Javascript
Jquery Mobile 自定义按钮图标
Nov 18 Javascript
JS组件Bootstrap Table使用方法详解
Feb 02 Javascript
Angularjs实现数组随机排序的方法
Oct 02 Javascript
原生JS实现手动轮播图效果实例代码
Nov 22 Javascript
解决layui 表单元素radio不显示渲染的问题
Sep 04 Javascript
使用layui实现的左侧菜单栏以及动态操作tab项方法
Sep 10 Javascript
vue.js iview打包上线后字体图标不显示解决办法
Jan 20 Javascript
vuex(vue状态管理)的特殊应用案例分享
Mar 03 Javascript
在vue中使用cookie记住用户上次选择的实例(本次例子中为下拉框)
Sep 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
PHP弱类型的安全问题详细总结
2016/09/25 PHP
使用PHP json_decode可能遇到的坑与解决方法
2017/08/03 PHP
完美的php分页类
2017/10/24 PHP
ExtJs 3.1 XmlTreeLoader Example Error
2010/02/09 Javascript
jquery EasyUI的formatter格式化函数代码
2011/01/12 Javascript
由Javascript实现的页面日历
2011/11/04 Javascript
JS 实现点击a标签的时候让其背景更换
2013/10/15 Javascript
js jq 单击和双击区分示例介绍
2013/11/05 Javascript
jquery中常用的函数和属性详细解析
2014/03/07 Javascript
详解Javascript 装载和执行
2014/11/17 Javascript
jQuery横向擦除焦点图特效代码分享
2015/09/06 Javascript
通过设置CSS中的position属性来固定层的位置
2015/12/14 Javascript
JavaScript 冒泡排序和选择排序的实现代码
2016/09/03 Javascript
使用Fullpage插件快速开发整屏翻页的页面
2017/09/13 Javascript
利用Vue实现简易播放器的完整代码
2020/12/30 Vue.js
Python logging管理不同级别log打印和存储实例
2018/01/19 Python
Flask框架实现给视图函数增加装饰器操作示例
2018/07/16 Python
Python函数中不定长参数的写法
2019/02/13 Python
python3 property装饰器实现原理与用法示例
2019/05/15 Python
关于PyTorch源码解读之torchvision.models
2019/08/17 Python
欧缇丽加拿大官方网站:Caudalie加拿大
2019/07/18 全球购物
日本最大化妆品和美容产品的综合口碑网站:cosme shopping
2019/08/28 全球购物
SIMON MILLER官网:洛杉矶的生活方式品牌
2020/10/19 全球购物
天网面试题
2013/04/07 面试题
小区门卫值班制度
2014/01/24 职场文书
网络工程专业自荐信范文
2014/03/16 职场文书
小学语文教研活动总结
2014/07/01 职场文书
暑假安全教育广播稿
2014/09/10 职场文书
2014年服务员工作总结
2014/11/18 职场文书
供应商食品安全承诺书
2015/04/29 职场文书
会议室管理制度范本
2015/08/06 职场文书
远程教育培训心得体会
2016/01/09 职场文书
低端且暴利的线上线下创业项目分享
2019/09/03 职场文书
导游词之昭君岛
2020/01/17 职场文书
Python还能这么玩之用Python修改了班花的开机密码
2021/06/04 Python
Hive导入csv文件示例
2022/06/25 数据库