JavaScript(3)

赋值运算符---可以将符号右侧的值赋值给符号左侧的变量。
	=	---	直接赋值		var a = 5

	+=	---	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

关系运算符---通过关系运算符可以比较两个值之间的大小关系
			如果关系成立它会返回true,如果关系不成立则返回false>	---	大于号
		-判断符号左侧的值是否大于右侧的
		-如果关系成立,返回true,如果关系不成立则返回false>= 	---	大于或等于
	<	---	小于号
	<= 	---	小于或等于	

非数值的情况:
-对于非数值进行比较时,会将其转换为数字然后再比较
	console.log(1 > true); //false
	console.log(1 >= true); //true
	console.log(1 > "0"); //true
	console.log(10 > null); //true
//任何值和NaN做任何比较都是false
	console.log(10 <= "hello"); //false
	console.log(true > false); //true
	
-如果符号两侧的值都是字符串时,不会将其转换为数字进行比较,而会比较字符串中字符的Unicode编码。
// 比较两个字符串时,比较的是字符串的字符编码
	console.log("a" < "b");  // true
//比较两个字符串型的数字时,可能会得到不可预期的结果
	console.log("11" < "5");  // true
注意:在比较两个字符串型的数字时,一定一定要先转型再比较大小
//比较字符编码时,是一位一位进行比较。
//如果两位一样,则比较下一位,所以可以借用它来对英文进行排序
//比较中文没有意义


Unicode 编码:
在字符串中可以使用转义字符输入Unicode编码	---	\u四位编码
		console.log("\u2620"); 
-HTML 网页中使用Unicode编码	---	&#四位编码(这里的编码需要使用10进制);
	<h1 style="font-size: 100px;">&#9760;</h1>
== 	---	等于
相等运算符:---用来比较两个值是否相等
	(如果相等会返回true,否则返回false。)
	使用==来做相等运算
		-当比较两个值时,如果值的类型不同则会自动转换,将其转换为相同的类型,然后再比较
	console.log("1" == 1);	// true。
	console.log(true == "1");   // true
	console.log(null == 0);   // false

-undefined 衍生自 null,所以这两个值做相等判断时,会返回true。
	console.log(undefined == null);  //true

-NaN不和任何值相等,包括他本身。
	console.log(NaN == NaN); //false
	判断 b的值是否为NaNvar b = NaN;
		//console.log(b == NaN); //false
	-可以通过 isNaN()函数来判断一个值是否是NaN
		console.log(isNaN(b));
		如果该值是NaN则返回true,否则返回false

!=	---	不相等
不相等运算符:---用来比较两个值是否不相等
	(如果不相等会返回true,否则返回false。)
	-使用 != 来做不相等运算	
	-不相等也会对变量进行自动的类型转换,转换后相等返回false

=== ---	全等
用来判断两个值是否全等,和相等类似,**不同的是**它不会做自动的类型转换
	-如果两个值类型不同,直接返回false
		console.log("123" === 123);	//false
		console.log(null === undefined);//false

!== ---	不全等
用来判断两个值是否不全等,和不相等类似,**不同的是**它不会做自动的类型转换
	console.log(1 !== "1");	//true
三元运算符---也叫 条件运算符:
	语法:
		条件表达式 ? 语句1 : 语句2;
条件运算符在执行时,首先对条件表达式进行求值:
	-如果该值为true,则执行语句1,并返回执行结果
	-如果该值为false,则执行语句2,并返回执行结果	
		var a = 30;
		var b = 20;
		var c = 40;
		//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);
	-如果条件的表达式的求值结果是一个非布尔值,会将其转换为布尔值然后再运算。
运算符的优先级:
	, --- 可以分割多个语句,一般在声明多个变量时使用
		var a=1,b=2,c=3;//可以同时声明并赋值

运算符的优先级:	(先乘除,后加减)
				(优先级从高到低)
				(如果优先级一样,则从左往右)
·	.[]new
·	()
·	++--
·	!~+(单目)、-(单目)、typeofvoiddelete
·	%*/
·	+(双目)、-(双目)
·	<<>>>>>
·	<<=>>=
·	==!=====!==
·	&
·	^
·	|
·	&&
·	||
·	?:
·	=+=-=*=/=%=<<=>>=>>>=&=、
·	^=|=
·	,
[无需记忆,如果不清楚哪个优先级更高,可以把()运用上]
我们的程序是由一条一条语句构成的
按照自上向下的顺序一条一条执行的
在JS在可以使用 { } 来为语句进行分组
	同一个{}中的语句我们称为一组语句。要么都执行,要么都不执行
	一个{}中的语句我们也称为一个代码块,在代码块后无需写 ; 
代码块---只具有分组的作用,没有其他的用途
	
流程控制语句:---可以控制程序执行流程,使程序可以根据一定的条件来选择执行
语句分类:
	1.条件判断语句
	2.条件分支语句
	3.循环语句

条件判断语句---在执行某个语句之前进行判断
(如果条件成立才执行,条件不成立不执行)

语法一:
	if (条件表达式) {
	    语句
	}
-if语句只能管紧随其后的那个语句,如果控制多条语句,则将其放到代码块中。

语法二:
	if (条件表达式) {
		   语句...
		} else {
	    	语句...
	}

语法三:
	if (条件表达式1) {
		语句...	
	} else if (条件表达式2) {
	    // 条件1不满足,条件2满足时,执行条件2
	   	 语句...
	} else if (条件表达式3) {
	    // 条件1、2不满足,条件3满足时,执行条件3
	    语句...
	} else {
	    // 条件1、2、3都不满足时,执行该语句
	    语句...
	}

条件分支语句:---也叫switch语句
语法:
	switch(条件表达式) {
		case 表达式:
			语句...;
			break;
		case 表达式:
			语句...;
			break;
		...
		default:
			语句...;
			break;
	}
执行流程:
在执行时会依次将 case后的表达式和switch后的表达式的值进行全等比较 
如果比较结果为true,则从当前case处开始执行代码
	当前case后的所有代码都会执行,可以在case后边跟一个break关键字---确保只执行当前case语句,而不会执行其他的语句
如果比较结果为false,则继续向下比较
	所有结果都为false,则会执行default后的语句

switch语句和if语句的功能实际上有重复的,两者可互相代替
循环语句:----通过循环语句可以反复执行一段代码多次

while循环:
语法:
	while(条件表达式){
		语句...
	}

while语句在执行时,先对条件表达式进行求值判断:
	如果值为true,则执行循环体,
		循环体执行完毕以后,继续对表达式进行判断
		如果为true,则继续执行循环体,以此类推
	如果值为false,则终止循环
	//表达式写死为true的循环,叫死循环(慎用)
	可以使用 break 来终止循环。

创建一个循环需要三个步骤:
	1.初始化一个变量
	2.在循环中设置一个条件表达式
	3.定义一个更新表达式,每次更新初始化变量

do...while 循环:
语法:
	do{
		语句...
	}while(条件表达式)

执行流程:
do...while语句在执行时,会先执行循环体,
	循环体执行完毕以后,在对while后的条件表达式进行判断:
		如果结果为true,则继续执行循环体,执行完毕继续判断以此类推
		如果结果为false,则终止循环

区别:while 是先判断后执行,而 do...while 是先执行后判断。
do...while 可以保证循环体至少执行一次,而 while 不能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值