JS基礎_相等運算符

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<script type="text/javascript">
			
			/*
			 * 相等運算符用來比較兩個值是否相等,
			 * 	如果相等會返回true,否則返回false
			 * 
			 * 使用 == 來做相等運算
			 * 	- 當使用==來比較兩個值時,如果值的類型不同,
			 * 		則會自動進行類型轉換,將其轉換爲相同的類型,然後再比較
			 * 		
			 * 不相等
			 * 	 不相等用來判斷兩個值是否不相等,如果不相等返回true,否則返回false
			 * 	- 使用 != 來做不相等運算
			 * 	- 不相等也會對變量進行自動的類型轉換,如果轉換後相等它也會返回false
			 * 
			 * 		
			 *  ===
			 * 		全等
			 * 		- 用來判斷兩個值是否全等,它和相等類似,不同的是它不會做自動的類型轉換
			 * 			如果兩個值的類型不同,直接返回false
			 * 	!==
			 * 		不全等
			 * 		- 用來判斷兩個值是否不全等,和不等類似,不同的是它不會做自動的類型轉換
			 * 			如果兩個值的類型不同,直接返回true
			 */
			
			console.log(1 == 1); //true
			
			var a = 10;
			console.log(a == 4); //false
			
			console.log("1" == 1); //true
			
			console.log(true == "1"); //true,轉換成number比較
			
			console.log(null == 0); //false
			
			/*
			 * undefined 衍生自 null
			 * 	所以這兩個值做相等判斷時,會返回true
			 */
			console.log(undefined == null); //true
			
			/*
			 * NaN不和任何值相等,包括他本身
			 */
			console.log(NaN == NaN); //false
			
			var b = NaN;
			/*
			 * 可以通過isNaN()函數來判斷一個值是否是NaN
			 * 	如果該值是NaN則返回true,否則返回false
			 */
			console.log(isNaN(b)); //true
			

			console.log(10 != 5); //true
			console.log(10 != 10); //false
			console.log("abcd" != "abcd"); //false
			console.log("1" != 1);//false,對變量進行自動的類型轉換
			

			console.log("123" === 123); //false,不會做自動的類型轉換,如果兩個值的類型不同,直接返回false
			console.log(null === undefined); //false
			
			console.log(1 !== "1"); //true
			
			
		</script>
	</head>
	<body>
	</body>
</html>

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章