JS中的运算符
1、算术运算(单目运算符)
		     +、 -、 *、  /、  % 取余、++ 自增、-- 自减
		             加号有两种作用:链接字符串和加法作用,当+两边全为数字时,进行加法运算;当+两边有任意一边为字符串时,起链接字符串的作用,链接之后的结果为字符串;
		             除加号外,其余符号运算时,会先尝试将左右变量用Number函数转为数字;
		             除号:结果会保留小数点;
		     ++:自增运算符,将变量在原有基础上+1
		     --:自减运算符,将变量在原有基础上-1
重点!!【a++和++a的异同】       
		       ①相同点:不论a++和++a,运算完以后,a的值均会+1;
		       ②不同点:a++:先用a的值去运算,再把a+1;
		              ++a:先把a+1,再把a+1以后的值取运算;
		              eg:var a=3,b,c;
			              b = a++ +2;//先用a运算,b=3+2  再把a+1  a=4
						  c = ++a +2;//先把a+1,a=5,再用a+1以后的值去运算,c=5+2
		              ++在前  先加一  再计算          --在前   先减一   再计算
		              ++在后  先运算  再加一        --在前   先运算   再减一
		              
			2、赋值运算
		     =:赋值,把右边的赋值给左边  +=  -=  *=  /=  %=
		       +=:a+=b;相当于a=a+b;但是,前者的运算效率要比后者快,所以推荐使用+=的写法;
		     
			3、关系运算
		     ==等于、  ===全等、!=不等、!==不全等、>、<、>=、<=
		                 关系运算符,运算之后的结果,只能是Boolean类型;
		                 判断一个数字处于某个空间,必须用&&链接;
		      eg:a<10 && a>0          错误写法:10>a>0
		      ===:严格等于,要求不但要类型相同,值也必须相同;类型不同,结果直接为flase;类型相同,再进行下一步计算;
		      ==:等于。类型相同:与===效果一样。类型不同时,会先尝试用Number函数将两边转为数字,然后再进行判断。
		                             但是,有个别 特例:eg:Null==flase(错误)   Null==Undefined(正确)
		                              
			4、条件运算符(多目运算)
		     a>b?true:false 
		                               有两个重要符号: ?和:
		         	 当?前面部分,运算结果为true时,执行:前面的代码
		    		 当?前面部分,运算结果为flase时,执行:后面的代码
		  		   冒号两边可以为数值,则整个式子可用于赋值。var a = 1<2?1:2;
		  		   冒号两边可以为代码块,将直接执行代码。1<2?alert(1):alert(2);
		  		   多目运算符可以多层嵌套。var a =1<2?alert(1):(1>0?4:5);
			5、位运算符、 逻辑运算符
		      &&与、||或、!非
		        &&:两边都成立,结果为true;
		        ||:两边有任意一边成立,结果为true;
		    6、运算符的优先级:
		     ()          //小括号最高  
		     !  ++  --   //单目运算符
		     *  /  %
		     + - 
		     > <  >=   <=
		     ==  !=
		     &&        //与或同时存在时,&&比||高
		     ||  
		     =  +=   -=  *= /=
                    
                
                
            
        
浙公网安备 33010602011771号