运算符

来源:互联网 发布:sql多张表合并 编辑:程序博客网 时间:2024/06/05 09:58

运算符

1.四则运算

生活中的数学运算符包括+、 - 、x 、÷,那么计算机也有对应的运算符+、-、*、/。
这些简单的四则运算与生活中的运算符一样,都是相同的作用。因为这些运算符与生活中的一样,我就不一一介绍了,直接写一些代码让你们看下。

    var a = 5;    var b = 3;    var c = a + b;/*加法*/    var d = a - b;/*减法*/    var e = a * b;/*乘法*/    var f = a / b;/*除法*/

上面得到的c、d、e、f分别是8、2、15、1.67。
不过计算机也有别于生活,下面介绍下一些别的运算符。

2.求余运算符

这个运算符用%来表示。他的作用是对两个整数求余,得到的是余数。
举个例子:
var g = a % b;

上面得出来g为2.因为5除以3的1余2,我们求的就是这个余数2.
这个求余也比较重要,一般用在求一个数的各位数之和,很经典。

3.关系运算符

这些运算符一般是用来判断的,关系嘛,谁大谁小。
有> 、< 、==、<=、>=、!=6个运算符。
>、<、>=、<=这些就不必要种要介绍了吧,都是很常见的,数学里面也有。就写行代码看一下吧,接着上面写。

    var h = a > b;/*大于*/    var i = a < b;/*小于*/    var j = a >= b;/*大于等于*/    var k = a <= b;/*小于等于*/

上面得到 h、i、j、k分别是true、false 、true 、false
得到这个结果应该不意外吧。关系运算符得到的都是布尔类型的数字,1和0.false代表,true代表1.
下面说下“==”,这个就是现实中的“=”。
为什么需要使用两个等号呢?
这是因为我们在计算机中赋值是使用“=”的。为了把判断与赋值分开来,我们就在原有的基础上再加了=。
!=”是不等于的意思。根据字面理解,如果两个数是不等于的话,那么就是false相等的话就是0、true.

    var l = a == b;/*等于*/    var m = a != b;/*不等于*/

关系运算符还有一些扩展的,不太常见的,这个不常见指的是在代码中也很少见。
=== 、 !== 分别是绝对相等、绝对不相等,这两个是需要判断数值以及类型的,要全部都相等。
“===” 需要数值和类型都相等才是真。

    var b1 = "5";    var b2 = 5;    var n = a === b;    var o = a === b1;    var p = a === b2;

这里也是接着上面写,但是我新添加了两个数,用来作对比。
这样子得到的n、 o、 p分别是false、false 、true。
首先我们看下 b1 的是也是5,但是他的类型确实字符类。所以不是绝对相等。
但是b2类型是number,值也是5,这就相等了。
通过上面的案例,差不多能理解绝对相等的意思了。

“!==”这个就是绝对等于的反数,与绝对等于相反。
这个我就不做案例了。
4.赋值计算

4.逻辑运算

逻辑运算包括&&、||、!三种,分别是与、或、非。
“&&”是只有两端都为真才是真。

    var t = (a > 2 && b >2);    var u = (a > 2 && b <2);

上面得到的t就是true,而u则是false。因为a和b都大于2.
“||”是两端只要有一个是真就为真。

    var v = (a > 2 || b >2);    var w = (a > 2 || b <2);

上面得到的v是true,w也是true。因为只要有一个为真,结果就是真。
你也可以写
var w = (a <2 || b < 2)

这上面运算符两端都是假的,所以结果也是假的,false。

5.位运算符

位运算符是最难的,包括&、|、^ 分别是与、或、异或。
这些位运算符有一个特点,他们的计算都是在二进制下进行的。那么不是二进制怎么办,我们把他转换为二进制就行了。
“&” 与运算,是只有都是1才为1,不然都是0.
“|”只要有一个1,就是1.只有当全是0,才为0.
“^”不同为1,相同为0.

    var x = ((a & b).toString(2));    var y = ((a | b).toString(2));    var z = ((a ^ b).toString(2));

上面得到的结果x是1,y是111,z是110.
这些运算都是在二进制的情况系进行的,所以输出也是二进制。

最后说下按位与运算的作用:

(1) 测试某一位是0还是1;

1100010000101011

0000000000001000

2)设置某些位为0

1100010000101011

1111111111110111

(3)按位或运算的作用:设置某些位为1

1100010000101011

0000000000010000

x&1 = x (x表示一位二进制,可能是0或者1)

x&0 = 0

x|0 = x

x|1 = 1

异或运算的作用

x^1 = x(反)

x^0 = x

位于运算一般使用在电路中,用来控制电路。