Jscript运算符

     --、简单值:通过计算转换成一个值、字面量或变量名

        

 5.9

      true

      'abc'

      没有任何意义


 --、复杂:字面量和运算符组合

  var box=1
	  var box2=box+1
	  box>10
	  box=20
	  box<5

2、一元运算符

     --、++


    --、+:加法,字符串拼接

 var box=100
	  var box2=100+"88"
	  console.log(box2)  // 10088
	  var str="abc"+"bcd"
	  var box=true+100
	  console.log(box)  // 101
	  console.log(true+false)  // 1
	  // console.log(true++)  // 报错
	  console.log(+true)  // 1
	  简写形式
	  var a=100
	  a+=2 // a=a+2

--、-减法

 var a='a'
	  var b='A'
	  console.log(a.charCodeAt()-b.charCodeAt())

--、乘法:*

--、乘法:*

  console.log("60"*"4")  // 240
	--、除法:/
	  console.log("60"/true)  // 60
	--、取余(取模)
	  console.log(100%30)  // 10
	  console.log(100%true)  // 0
	  console.log(100%false)  // NaN
	  console.log(100%null)  // nan
	  console.log(100 / null)  // Infinity
	  console.log(100 / undefined)  // NaN
	  console.log(100%'30')  // 10
	注:+如果计算值,需要强转,/、*、% 、- 都有隐式转换的功能

关系运算符

 <:小于

   >:大于

   >=:大于等于

   <=:小于等于

   ==:等于

   注:结果是boolean值

  var box='a'>'b'
   console.log(box)  // false,ASCII码
   var box='A'>'b'   // A=65  a=97 b=98
   console.log(box)  // false
   console.log(undefined==null)  // true
   console.log('null'==null)   // false
   console.log('1'==1)   // true
   console.log(false==0)  // true
   console.log(true==2)  // false
   console.log(undefined==0)  // false
   console.log(null==0)  // false
   console.log(100=='100')  // true
   console.log(5>3>1)  // false
   console.log(true+false)  //1
   console.log(true+2>4)  //false

 全等(恒等)===:比值,比类型,没有隐式转换(完全一模一样)

 console.log('1'==1)  // true
     console.log('1'===1) // false,没有隐式转换,比值,比类型(完全相等)
	 console.log(undefined===null)  // false
	 console.log(undefined===undefined)  // true
	 console.log(null===null) // true
	 console.log((1==1)===true)  // true===true
	 var a
	 console.log(a===undefined)  // true
	 
	 var a=1
	 var b='a'
	 console.log((a+b)===(a+'b'))  // false
	 console.log(a/b===b/a)  // NaN===NaN,false
	 

 !=:不等于

   !==:(不全等)

var a=100
	console.log(a!=a)  // false
	var b="100"
	console.log(a!=b)  // false
	var c=200
	console.log((a!=c)!=false)  // true
	var d=2
	console.log(((d++)==3)===true)  // false

  --、逻辑运算符

   1、&&(and):与运算(两个值都为true,结果为true,只要有一个为false,结果就是false),两个条件同时满足

var a=100
	var b=200
	var c=300
	var d=400
	var e=500
	var f=600
	console.log(a<b && c<d && e<f)  // true
	
	<input type="text" placeholder="请输入用户" id="user"/>
	<input type="button" value="注册" onclick="check()"/>
	<script>
		function check(){
			var u=user.value
			if(u!='' && u.length>=6){  
				alert('合法')
			}else{
				alert('用户名不合法')
			}
		}
	</script>
	

2、|| (or):或,两个条件满足一个就是true

 <input type="text" placeholder="请输入用户" id="user"/>
     <input type="button" value="注册" onclick="check()"/>
     <script>
     	function check(){
     		var u=user.value
     		if(u=='' || u.length<6){ 
     			alert('用户名为空或长度少于6位')
     		}
     	}
     </script>

3、!(not):非,取反,如果是true那结果是false,如果是false,结果是true

 var a=true
     console.log(!a)  // false
     
     var b=false
     console.log(!b)  // true
     
     var c=0
     console.log(!c)  // true
     
     var d=200
     console.log(!d)  // false
     
     var e=''
     console.log(!e)  // true
     
     var h='abc'
     console.log(!h)  // false
     
     var f=null
     console.log(!f)  // true
     
     var g=undefined
     console.log(!g)  // true
     
     var h=NaN
     console.log(!h)  // true
	 
	 var i=true
	 console.log(!!!i)  // false
	 
	 <input type="text" placeholder="请输入用户" id="user"/>
	 <input type="button" value="注册" onclick="check()"/>
	 <script>
	 	function check(){
	 		var u=user.value
	 		if(!u=='' && !(u.length<6)){   // 用户名不能为空
	 			alert('合法')
	 		}else{
	 			alert('用户不能为空!')
	 		}
	 	}


--、赋值与复合运算符

  1、赋值
	   var box = 200  // 把200赋给box
	   var a=100
	   注:带var和不带var是有区别的
		function a(){
			var box=100  // 局部变量,只能在函数内部使用,外部自动销毁
			box1=200     // 全局变量
		}
		a()
		console.log(box1)  // 200,box无法输出(报错 not defined)
 2、复合赋值运算符
	   var box=200
	   box=box+200  // 在box的自身上加200
	   简写成:box+=200
	   如:box*=3

		var box=5
		
		box+=5
		console.log(box)  // 10
		
		box*=2  // box=box*2
		console.log(box)   // 20
		
		box/=2  // box=box/2
		console.log(box)  // 10
		
		box-=3  // box=box-3
		console.log(box)
		
		var box=100
		box%=3  // box=box%3
		console.log(box)  // 1
3、其他运算符
	  +:字符串运行符(拼接字符串)
	    var a='abc'
		var b="bcd"
		var c=a+b
	  ,:一条语句可以执行多个操作
		  var a=100
		  var b=200
		  var c
		可以简写成:
	      var a=100,b=200,c


三元(三目)运算符

  <input type="text" placeholder="请输入用户" id="user"/>
	    <input type="button" value="注册" onclick="check()"/>
	    <script>
	    	function check(){
	    		var u=user.value
	    		/* 
	    			if(u==''){
	    				alert('用户不能为空!')
	    			}else{
	    				alert('正确')
	    			} 
	    		*/
	    	   // 条件?true(满足条件)执行:false(不满足条件)执行
	    	   u==''?alert('用户不能为空!'):alert('正确')
	    	}
			注:用于取代简单条件if判断,如果太多的条件判断不推荐使用。
	    </script>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值