javascript基础(赋值运算符,关系运算符,相等运算符,三元运算符,运算符的优先级,代码块)(十)

有代码编写基础的,自学时请略过

1.赋值运算符:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<script type="text/javascript">
			
			/*
			 	赋值运算符可以将一个值赋值给一个变量
			 	
			 		=
			 			- =可以将符合右侧的值,赋值给符号左侧的变量
			 		+=
			 			- a += x 等价于 a = a + x
			 		-=
			 			- a -= x 等价于 a = a - x
			 		*=
			 			- a *= x 等价于 a = a * x
			 		/=
			 			- a /= x 等价于 a = a / x
			 		%=
			 			- a %= x 等价于 a = a % x
			 	
			 * */
			
			var a = 10;
			
			//使a增加5
			//a = a + 5;
			//a += 5; // 等价于 a = a + 5;
			
			//a *= 5; // a = a * 5;
			
			//a /= 5; //a = a / 5;
			
			a %= 5 ; // a = a % 5;
			
			console.log("a = "+a);
			
			
		</script>
	</head>
	<body>
	</body>
</html>
2.关系运算符:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<script type="text/javascript">
			
			/*
			 	关系运算符可以比较两个值之间的大小关系
			 	
			 		> 大于号,比较符号左侧的值是否大于右侧的值
			 			如果关系成立,则返回true,否则返回false
			 		>= 大于等于,比较左侧的值是否大于或等于右侧的值	
			 			如果关系成立,则返回true,否则返回false
			 		< 小于号
			 		<= 小于等于
			 		
			 		如果对非数值类型进行关系运算,则会将他们转换为Number然后在比较
			 * */
			
			
			//console.log(10 > 5); //true
			//console.log(4 > 5); //false
			//console.log(5 > 5); //false
			//console.log(5 >= 5); //true
			//console.log(6 >= 5); //true
			
			var result = 5 < 4; //false
			
			
			//1 < 0
			result = true < false; //false
			
			//1 < 2
			result = true < "2"; //true
			
			result = null < 5; //true
			
			//NaN < 5 NaN和任何值比较都是false
			result = undefined < 5; //false
			result = undefined > 5; //false
			result = undefined >= 5; //false
			
			result = 5 < "4"; //false
			
			/*
			 * 当关系运算符的两侧都是字符串时,它不会将字符串转换为Number,
			 * 	而是会比较字符串的Unicode编码
			 * 
			 * 当字符串中含有多个字符时,会逐位进行比较
			 * 	第一位和第一位比 第二位和第二位比 以此类推
			 * 	
			 * 通过这种方式,可以将文本按照字母顺序进排序,但是对于中文来说意义不大,
			 * 	尤其在比较两个数字类型的字符串时,一定要注意,很有可能得到错误的结果
			 */
			
			
			
			result = "a" < "b"; //true
			
			result = "bc" < "be"; //true
			
			result = "abcdefghijk" < "b"; //true
			
			//0035 < 0034
			result = "5" < "4"; //false
			
			result = "5" < "40"; //false
			
			result = "中" > "国";
			
			result = +"5" < "40"; //true
			
			console.log("result = "+result);
			
		</script>
	</head>
	<body>
	</body>
</html>

3.相等运算符:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<script type="text/javascript">
			
			/*
			 * ==
			 * 	- 相等运算符,它可以用来判断两个值是否相等,如果相等,则返回true,否则返回false
			 * 	- 如果对两个类型不同的变量进行相等比较,会先将其转换为相同的类型,然后再比较
			 * 		(至于具体转换为什么类型,不定,但是大部分情况是转换Number)
			 */
			
			//console.log(1 == 1); //true
			//console.log(1 == 2); //false
			
			//console.log(true == 1);//true
			
			//console.log(true == 2);//false
			
			//console.log("1" == true); //true
			
			//字符串和布尔值比时,都转换为Number然后在比
			//console.log("2" == true); //flase
			
			//console.log(null == 0);//false
			
			//由于undefined衍生自null,所以这两个类型的值做相等比较时会返回true
			//console.log(null == undefined);//true
			
			//NaN不和任何值相等,包括它自己
			//console.log(NaN == NaN); //false
			
			var a = NaN;
			
			//判断a的值是否是NaN
			//console.log(a == NaN);
			/*
			 * 在JS中为我们提供了一个isNaN()函数,
			 * 	这个函数专门可以判断一个值是否是NaN,如果是则返回true,否则返回false
			 */
			//console.log(isNaN(a));
			
			/*
			 * ===
			 * 	- 全等运算符,可以判断两个值是否全等,如果全等则返回true,否则返回false
			 * 	- 全等和相等的区别就是相等会做自动的类型转换,而全等不会,
			 * 		使用全等时,如果两个值的类型不同,直接返回false
			 */
			
			//console.log(1 === "1"); //false
			//console.log(true === "1"); //false
			//null和undefined相等,但是不全等
			//console.log(null === undefined); //false
			
			/*
			 * !=
			 * 	- 不等运算符,和相等相反,如果两个值不等则返回true,否则返回false
			 * 	- 不等会对值进行自动的类型转换,如果转换后相等,它也认为相等
			 * 
			 * !==
			 * 	- 不全等运算符,检查两个值是否不全等,如果成立则返回true,否则返回false
			 *  - 不全等不会做自动的类型转换,如果两个值的类型不同,直接返回true
			 */
			//console.log(1 != 2);//true
			//console.log(1 != 1);//false
			//console.log(1 != "1");//false
			console.log(1 !== "1");//true
			
			
			
		</script>
	</head>
	<body>
	</body>
</html>

4.三元运算符:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<script type="text/javascript">
			
			/*
			 	三元运算符(三目运算符)
			 		- 三元运算符需要三个操作数
			 		-?:
			 		-语法:
			 			条件表达式?语句1:语句2
			 		- 执行流程:
			 			- 三元运算符在执行时,会先对条件表达式进行求值判断
			 				如果判断结果为true,则执行语句1,并将执行结果返回
			 				如果判断结果为false,则执行语句2,并将执行结果返回
			 * */
			
			//false?alert("语句1"):alert("语句2");
			
			//创建两个变量
			var a = 60;
			var b = 75;
			var c = 40;
			//如果a的值大,则输出a大,如果b的值的,则输出b大
			//alert("b大");
			//alert("a大");
			//a > b ? alert("a大") : alert("b大") ;
			
			//获取a和b之中的大值
			/*var max = a > b ? a : b;
			max = max > c ? max : c;*/
			
			//表达式尽量不要写的太长,不方便阅读
			var max = a > b ? ( a > c ? a : c) : (b > c ? b : c) ;
			
			console.log("max = "+max);
			
		</script>
	</head>
	<body>
	</body>
</html>
5.运算符的优先级:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<script type="text/javascript">
			
			/*
			 	运算符的优先级和数学中的类似,
			 		比如:先算乘除后算加减,也可以通过括号来改变运算的顺序
			 	遇到优先级不清楚,可以查询优先级的表,在表中,位置越靠上,优先级越高,
			 		优先级越高,越先运算,同一行的运算符优先级一样,优先级一样从左往右计算
			 	但是这个优先级的表,不需要记忆,如果遇到拿不准,则使用()来改变优先级	
			 * */
			
			var result = ( 1 + 2 ) * 3;
			
			/*
			 * 如果|| 和  &&的优先级一样,或者 ||大 
			 * 		则从左向右算,结果是 3
			 * 
			 * 如果 && 的优先级高,则应该先算后边的
			 * 		结果是:1  
			 */
			result = 1 || (2 && 3);
			
			console.log("result = "+result);
			
			
		</script>
	</head>
	<body>
	</body>
</html>

6.代码块:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<script type="text/javascript">
		
		/*
		 	在JS中,我们可以使用{}来为语句进行分组
		 		可以将同一组的语句放到一对{}中
		 	一个大括号中的语句,我们称为是一个代码块,代码块后边不用加;	
		 	
		 	JS中的代码块仅有分组的作用没有其他的作用,代码块中的内容对于代码块外是可见的
		 * */
			
			/*{
				alert("hello");
				console.log("你好");
				document.write("哈哈哈哈哈哈");
			}
			
			{
				alert("hello");
				console.log("你好");
				document.write("哈哈哈哈哈哈");
			}*/
			
			{
				
				var a = 123;
			}
			
			console.log(a);
			
			
		</script>
	</head>
	<body>
	</body>
</html>




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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

咸鸭蛋炒饭

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值