JavaScript--运算符操作--记录一次无聊的产出

		<script type="text/javascript">
			window.onload = function() {
    
    
				
				var xiaoming="xiaoming"
				console.log(!!xiaoming) //true
				console.log(!!1)	//true
				// !!表示的应该是一个强调   表达式为true时 返回的结果也是true
				
				var a = 100
				var b = 20
				var c = 30

				console.log('a==b结果是:' + (a == b)) //false
				
				console.log('a=b && (c)结果是:' + (a = b && (c))) //30
//				 console.log(a) //这里输出的是30
//				 console.log(a = b) //这里输出的话是20

				console.log('a==b && (c)结果是:' + (a == b && (c))) //false
				
				console.log('a!==b && (c)结果是:' + (a !== b && (c)))	//30
				console.log('------------')
				
				//console.log('a && b = c结果是:'+(a && b = c))	//Uncaught SyntaxError: Invalid left-hand side in assignment 未捕获的语法错误:赋值中的左侧无效
				
				console.log('a && b == c结果是:' + (a && b == c)) //false
				
				console.log('a && (b == c)结果是:' + (a && (b == c))) //false 	//a是一部分 b==c是一部分 两部分都为true返回true
				
				console.log('a && b !== c结果是:' + (a && b !== c)) //true	//a和b都不等于c
				console.log('------------')
				
				if(a > b && (a = c)) {
    
     //第一个条件成立时 第二个条件会被执行
					console.log('a > b && (a = c)判断后a的值为:'+a) //30
				}
				
				if(a > 100 && (a = 100)){
    
     //第一个条件不成立时 第二个条件不会被执行到
					console.log('a > 100 && (a = 50)判断后a的值为:'+a) //第一个判断条件不成立 不执行
				}
				
				console.log(a !== 40 && (b = a) + '---') //目前执行顺序下输出30
				
				// a!==40 a的值=b的值
				if(a !== 40 && (a = b)){
    
    
					console.log(a+''+b) //3030
				}

				//这是判断语句 当两个都为true时 返回true 执行方法体的内容
				if(a !== 40 && (a == b)){
    
    
					console.log(a+''+b) //3030
				}
			}
		</script>

猜你喜欢

转载自blog.csdn.net/weixin_45406850/article/details/123401128