运算符

运算符分为几种?

运算符可以分为:算术运算符、赋值运算符、关系运算符、逻辑运算符 。

算术运算符

+ 加、- 减、* 乘、/ 除、% 取模(求余数)、++ 递增、-- 递减。

如果两个数字相模,后面的数字不能为0。如果前面的数字比后面的数字小,那结果就是前面的数字。

1 console.log(2%0);//NaN
2 console.log(5%8);//5

++:递增

两个符号可以放在操作数的前面也可以放在后面 。操作一个数据的时候,++放在数值的后面与前面的效果是一样的,--同理。

1 var a=3;
2 a++;
3 console.log(a);//4
4 var a=3;
5 ++a;
6 console.log(a);//4

操作两个数据(给另一个变量赋值)的时候,++操作符放在变量后面,会先把本身的值赋给另一个变量,然后自己再+1 。

1 var a=2;
2 var b=a++;
3 //先把a的值赋值给b,然后a再+1,所以b是2,a是3
4 console.log(a);//3
5 console.log(b);//2

操作符放在变量前面,先把本身的值+1结果赋给另一个变量,然后自己再+1。

1 var a=2;
2 var b=++a;
3 //先把a+1的值赋值给b,然后a再+1,所以b是3,a也是3
4 console.log(a);//3
5 console.log(b);//3

赋值运算符

=、+=、-=、*=、/=、%=。

 1 var a=10;
 2 console.log(a+=10);//20
 3 var a=10;
 4 console.log(a-=5);//5
 5 var a=10;
 6 console.log(a*=8);//80
 7 var a=10;
 8 console.log(a/=5);//2
 9 var a=10;
10 console.log(a%=3);//1

关系运算符

<、>、<=、>=、==、!=、===、!==。

关系运算符的结果都会转化成布尔值。

 1 var a=10;
 2 console.log(a<5);//false
 3 console.log(a>5);//true
 4 console.log(a>=10);//true
 5 console.log(a<=10);//true
 6 console.log(a==12);//false
 7 console.log(a!=10);//false
 8 console.log(a=='10');//true
 9 console.log(a==='10');//false
10 console.log(undefined==null);//true
11 console.log(undefined==0);//false
12 console.log(null==0);//false
13 console.log(null==false);//false
14 console.log(undefined==false);//false

=== 是严格比较,它比较的不光是值,同时要比较类型。如果值与类型同时相同,返回true。

1 var a=10;
2 var b=10;
3 console.log(a===b);//true

!== 跟===正好相反,如果值与类型同时相同,就返回false。

1 var a=10;
2 var b=10;
3 console.log(a!==b);//false

逻辑运算符

&& 与 并且。当多个条件同时满足的时候,整个条件才会成立。

1 var a=5;
2 var b=10;
3 if(a<10&&b<12){ //两个条件同时成立
4     alert('成立');//成立
5 }else{
6     alert('不成立');
7 }

当左侧条件成立,返回右侧的值。当左侧条件不成立,会返回左侧的值。

1 console.log(1&&2);//2  左侧条件成立(true),返回右侧的值
2 console.log(0&&1);//0  左侧条件不成立(false),返回右侧的值

|| 或 或者。如果有一个条件成立,那整个条件就都成立。如果多个条件都不成立,整个条件才不成立。

1 var a=10;
2 var b=15;
3 if(a==10||b==12){ //a==10条件成立,整个条件成立
4     alert('成立');//成立
5 }else{
6     alert('不成立');
7 }

当左侧条件成立,返回左侧的值。当左侧条件不成立,会返回右侧的值。

1 console.log(1||2);//1 左侧条件成立(true),返回左侧的值
2 console.log(0||2);//2 左侧条件不成立(false),返回右侧的值

! 否 取反。把值转成布尔值 。

1 var a=true;
2 console.log(!a);//false
3 var b=false;
4 console.log(!b);//true

一、二、三元运算符

一元运算符:操作元素的个数为一个。

1 a++;
2 a--;
3 !a;
4 typeof a;

二元运算符:操作元素的个数为两个。

1 a+b;
2 a-b;
3 a*b;
4 a/b;
5 a%b;

三元运算符:

1 a?b:c;

问号前面是条件,冒号两边是结果。如果前面的条件成立,返回冒号左边的结果。如果前面的条件不成立,返回冒号右边的结果。

posted @ 2016-08-12 09:51  imguo  阅读(239)  评论(0编辑  收藏  举报