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 操作符(~、&、|、^、)使用案例
- Author -
hebedich声明:登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。
Reply on: @reply_date@
@reply_contents@