JS中运算符号大部分和java中的运算符一样,我们在这里分析一下特殊的运算符号
在这里插入图片描述

一、关于/%

JS中,数字类型都是number,能除尽,则默认结果就是一个整数,不能除尽,结果默认就是浮点

JS中如果出现除零,那么结果是 infinity,而不是报错
除零不会出现异常,而是出现 Infinity
和0取余数,出现NaN not a number 不是一个数字

二、关于+

+ 同时也是连接运算符,看两端的变量类型;
1、如果都是number,那么就是算数中的加法;
2、如果有字符串,那么就是连接符号;
3、如果是布尔类型和number相加,那么会将true转化为1;将false 转化为0;

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<script type="text/javascript">
			var a=1;
			var b="1"
			var c=true
			var d=false
			console.log(a+b)  //11
			console.log(a+c)  //2
			console.log(a+d)  //1
		</script>
	</head>
	<body>
	</body>
</html>

三、关于 == 等值符

先比较类型,如果类型一致,再比较内容,如果类型不一致,会尝试转换为number再比较内容

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<script type="text/javascript">
			var a=1;
			var b="1"
			var c=true
			var d="true"
			console.log(a==b)  //t
			console.log(a==c)  //t
			console.log(a==d)  //f
			console.log(b==c)  //t
			console.log(b==d)  //f
			console.log(c==d)  //f
		</script>
	</head>
	<body>
	</body>
</html>

四、关于=== 等同符

数据类型不同 直接返回false
如果类型相同 才会比较内容

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<script type="text/javascript">
			var a=1;
			var b="1"
			var c=true
			var d="true"
			console.log(a===b)  //f
			console.log(a===c)  //f
			console.log(a===d)  //f
			console.log(b===c)  //f
			console.log(b===d)  //f
			console.log(c===d)  //f
			
		    var e="kobe"
		    var f="kobe"
		    console.log(e===f)   //t
		</script>
	</head>
	<body>
	</body>
</html>

更多推荐