javascript——操作符(~、&、|、^、<<、>>)

直接上代码吧!

 1 <script type="text/javascript">
 2         //javascript操作符
 3         //1、按位非~
 4         var num1=25;//
 5         var num2=~num1;//
 6         alert(num2)
 7
 8         var num3=10;
 9         var num4=~num3;
10         alert(num4)
11
12         var num5=99;
13         var num6=~num5;
14         alert(num6)
15
16         //说明:相信大家也已经看出来了按位~(NOT)的实现原理:
17         //以num1、num2为讲解对象
18         //第一步:先把num1转换成二进制
19         //第二步:取得num1二进制的反码赋值给num2
20         //第三步:在把num2换算成十进制数字
21         //简单说明:就是把操作数的数值的负数减1
22
23
24         //2、按位与 &(AND)
25         var result=25 & 3;
26         alert(result);//1
27         //说明,就是把两数转换成二进制数字,按照一定的规则:
28         //第一个数值的位       第二个数值的位     结果
29         //  1                       1           1
30         //  1                       0           0
31         //  0                       1           0
32         //  0                       0           0
33
34         //简而言之,按位操作符的相对应的位都是1时则返回1,任何一位是0则返回0.
35         //然后在得到的二进制转换成十进制数字
36       //  25=0000 0000 0000 0000 0000 0000 0001 1001
37       //  3= 0000 0000 0000 0000 0000 0000 0000 0011
38       //  ------------------------------------------
39       // AND=0000 0000 0000 0000 0000 0000 0000 0001
40
41
42         //3、按位或 |(OR)
43         var result=25 | 3;
44         alert(result);//27
45         //说明,就是把两数转换成二进制数字,按照一定的规则:
46         //第一个数值的位       第二个数值的位     结果
47         //  1                       1           1
48         //  1                       0           1
49         //  0                       1           1
50         //  0                       0           0
51
52         //简而言之,按位操作符的相对应的位有一位是1就返回1,而只有在两个位都是0的情况下才返回0.
53         //然后在得到的二进制转换成十进制数字
54
55         //  25=0000 0000 0000 0000 0000 0000 0001 1001
56         //  3= 0000 0000 0000 0000 0000 0000 0000 0011
57         //  ------------------------------------------
58         //  OR=0000 0000 0000 0000 0000 0000 0001 1011
59
60
61         //4、按位异或 ^(XOR)
62         var result= 25 ^ 3;
63         alert(result);//26
64         //说明,就是把两数转换成二进制数字,按照一定的规则:
65         //第一个数值的位       第二个数值的位     结果
66         //  1                       1           0
67         //  1                       0           1
68         //  0                       1           1
69         //  0                       0           0
70         //简而言之,这个操作符(^)在两个数值对应位上只有一个1时才返回1,否则返回0.
71         //然后在得到的二进制转换成十进制数字
72
73         //  25=0000 0000 0000 0000 0000 0000 0001 1001
74         //  3= 0000 0000 0000 0000 0000 0000 0000 0011
75         //  ------------------------------------------
76         // XOR=0000 0000 0000 0000 0000 0000 0001 1010
77
78
79         //5、左移(<<)
80         var oldNum=2;
81         var newNum=oldNum << 5;
82         alert(newNum)
83         //说明,将2(二进制数码10)向左移5位结果就是1000000(二进制)等于64
84         //注意,左移不会影响操作符的符号位,例如将-2左移5位就是-64
85         //2=0000 0000 0000 0000 0000 0000 0000 0010
86        //64=0000 0000 0000 0000 0000 0000 010 00000
87
88
89         //6、有符号右移(>>)
90         var oldNum=64;
91         var newNum=oldNum >> 5;
92        //64=0000 0000 0000 0000 0000 0000 010 00000
93         //2=0000 0000 0000 0000 0000 0000 0000 0010
94         alert(newNum)
95     </script>

时间: 2024-10-11 05:38:50

javascript——操作符(~、&、|、^、<<、>>)的相关文章

javascript 操作符类型隐性转换

(一).一元操作符只能操作一个值的操作符叫做一元操作符1.递增和递减操作符a. 在应用于一个包含有效数字字符的字符串时,先将其转换为数字值,再执行加减1的操作.字符串变量变成数值变量.eg: var a='1'; ++a;  //a 变成2b.在应用于一个不包含有效数字字符的字符串时,将变量的值设置为NaN,字符串变量变成数值变量.eg:var a='1aa';++a  //a 变成NaNc:在应用于布尔值false时,先将其转换为0再执行加减1的操作.布尔值变量变成数值变量.eg:var a=

JavaScript操作符汇总

操作符 JavaScript 有赋值.比较.算术.位.逻辑.字符串和特殊运算符.本章描述了操作符,以及关于操作符优先级的一些信息. 表 2.1 JavaScript 所有操作符简明列表. 表 2.1 JavaScript 操作符 操作符分类 操作符 描述 算术操作符 + (加法) 将两个数相加. ++ (自增) 将表示数值的变量加一(可以返回新值或旧值). - (求相反数,减法) 作为求相反数操作符时返回参数的相反数.作为二进制操作符时,将两个数相减. -- (自减) 将表示数值的变量减一(可以

JavaScript 操作符

一.操作符: 1. 一元操作符 中的 递增操作符 递减操作符 分为 前置型(--a    ++a) 和 后置型 (a--    a++) 区别如下: var a = 3,b=6; c = --a +b; //c=8 前置型 是 先执行自身的运算,再执行 所在语句的运算 var a = 3,b=6; c = a-- +b; //c=9 后置型 是 先执行所在语句的运算,再执行 自身的运算 var a = 3,b=6; c = ++a +b; //c=10 先执行自身运算 var a = 3,b=6

javascript操作符

<h2>一元操作符</h2><p>只能操作一个值得的操作符叫做一元操作符</p><h4>1.递增和递减操作符</h4>递增和递减操作符借鉴于c,具有前置型和后置型,即a++,++a,a--,--a:计算方式和c语言类似,并且这四个操作符对任何值都适用(整数,字符串,布尔值,浮点数值和对象):在应用不同的值时,递增和递减遵循下列规则:</br>1.在用于一个包含有效数字字符的字符串时,先将其转换为数字值,再执行加减1的操作.

JavaScript操作符(关系操作符、相等操作符和条件操作符)

关系操作符用于对两个值进行比较,返回一个布尔值.关系操作符包括大于(>),小于(<),大于等于(>=),小于等于(<=).当关系操作符用于非数值时,也要先进行数值的转换.如 var result=5>3; 1.尝试将两个操作符转换为数字: 2.如果两个操作符均为字符串,则进行字符串的比较 3.如果任一表达式为NaN,则返回false: 4.-0等于+0: 5.负无穷小于包含自身在内的任何数 6.正无穷大于包含自身在内的任何数 相等操作符,用于确定两个变量是否相等.字符串.数值

JavaScript -- 操作符和逻辑运算

算数操作符 + : 加 - : 减 * : 乘 / : 除 %:取余 递增和递减 1.递增 ++a与a++都是对a进行递增的操作 区别 ++a先返回递增之后的a的值 a++先返回a的原值,再返回递增之后的值 2.递减同理 赋值操作符 简单赋值:= 复合赋值:+=.-=.*=./=.%= 复合运算可以简化我们的操作,比如var a = 5;    要给a加上5,正常情况我们会这样写 a = a + 5:,如果使用复合赋值,则简写为:a += 5:其他的几个复合赋值同理 比较操作符 >.<.>

javascript中的操作符详解1

好久没有写点什么了,根据博主的技术,仍然写一点javascript新手入门文章,接下来我们一起来探讨javascript的操作符. 一.前言 javascript中有许多操作符,但是许多初学者并不理解或曲解他们的用途,本章将会带领初学者们一起来学习一下javascript的几个常用操作符:typeof.in.delete.new. 二.学习目标 1. 深入了解javascript操作符:typeof.in.delete.new的功能及用法. 2. 剖析根本,掌握这些常用的操作符的运用场景,活学活

深入理解JavaScript系列(23):JavaScript与DOM(上)——也适用于新手

文档对象模型Document Object Model DOM(Document Object Model,文档对象模型)是一个通过和JavaScript进行内容交互的API. Javascript和DOM一般常常作为一个总体,由于Javascript通常都是用来进行DOM操作和交互的. 主要内容来自:http://net.tutsplus.com/tutorials/javascript-ajax/javascript-and-the-dom-series-lesson-1/ 关于DOM.有些

JavaScript与DOM(上)

本来像自己写一篇的...结果看到了Tom uncle的这篇..总结的确实很赞,其他文章也非常好推荐 转载自:http://www.cnblogs.com/TomXu/archive/2011/12/15/2288411.html 文档对象模型Document Object Model DOM(Document Object Model,文档对象模型)是一个通过和JavaScript进行内容交互的API.Javascript和DOM一般经常作为一个整体,因为Javascript通常都是用来进行DO