0
点赞
收藏
分享

微信扫一扫

JavaScript学习02-运算符与分支控制语句

舟海君 2022-05-06 阅读 80

目录

运算符

算数运算符

+ , - , * ,/ , %
浮点数运算会有问题

console.log(0.1+0.2);  //0.30000000000000004
console.log(0.07*100);  //7.000000000000001

递增和递减运算符

++ , - -
前置自增/自减和后置自增/自减如果单独使用效果一样

var x=20;
x++;
console.log(x);  //21

var y=20;
++y;
console.log(y);  //21

放入式子里会不同
前置:先自加/自减,后运算
后置:先原值运算,后自加/自减

var a=10;
++a;   //a=11
var b=++a +2;  //a=12
console.log(b);   //14

var c=10;
c++;  //c=11
var d=c++ +2;  //c=11  +2运算后   c=12
console.log(d);  //13

var e=10;
var f=e++ + ++e;  //e++  使用e=10运算,再自加 e=11,   ++e  e=12, +运算后 e=12
console.log(f);  //22

较多用后置

比较运算符

< , > , >= , <= , == , != , === , !==
比较运算后会返回一个布尔值
==会将数据转型再比较

console.log('18'==18);  //true

使用===, 判断左右两个数据的类型和值是否都相等

console.log('18'===18);  //false

逻辑运算符

&& , || , !
运用于多条件判断

逻辑中断

有多个表达式时,左边的表达式已经可以确定结果,就不再看右边的表达式

//&&  从左到右,有错误的就输出错误的,全对就输出最后一个
console.log(123 && 456);  //456
console.log(0 && 456);  //0
console.log(0 && 1+2 && 456);  //0
// || 从左到右,有正确的就输出第一个正确的,全错就输出最后一个
console.log(123 || 456);  //123
console.log(0 || '');  //''
// 逻辑中断影响运算结果
var num=10;
console.log(123 || num++);
console.log(num);  //10

赋值运算符

= , += , - =, * = , / = ,%= ,

运算符优先级

优先级运算符顺序
1()()
2一元运算符!,++ ,- -
3算数运算符先 * / %后+ -
4关系运算符> ,>= , < , <=
5相等运算符== , != , === , !==
6逻辑运算符先&&,后||
7赋值运算符=
8逗号运算符

分支控制语句

if语句

if

if(条件表达式){
	条件表达式成立执行代码
	}

if-else

if(条件表达式){
	条件表达式成立执行代码
}else{
    条件表达式不成立执行代码
}

if-else if

if(条件表达式1){
	条件表达式1成立执行代码
}else if(条件表达式2){
	条件表达式2成立执行代码
}else{
    条件表达式1、2都不成立执行代码
}

三元表达式

条件表达式 ? 表达式成立执行 : 表达式不成立执行
var x= 5>7 ? 'yes' : 'no' ;
console.log(x);  //no

//用if else表达
if(5>7){
	console.log('yes');
}else{
	console.log('no');
}

switch语句

switch(表达式){
	case value1:
		表达式值等于value1执行代码
		break;
	case value2:
		表达式值等于value2执行代码
		break;
	case value3:
		表达式值等于value3执行代码
		break;
	default:
		表达式值不等于以上任一个value执行代码
		break;
}

表达式的结果与value相等判断用的是===,即类型和值都要相等
break的作用是匹配到一种情况后立即退出匹配,否则会继续走下面的分支

var num=2;
switch(num){
	case 1:
		console.log(num);
		break;
	case 2:
		console.log(num);
	case 3:
		console.log(num);
	default:
		console.log(num);
		break;
}
//输出三个2

先走case,再走default

var num=3;
switch(num){
	default:
		console.log(num);
		break;
	case 1:
		console.log(num);
		break;
	case 2:
		console.log(num);
		break;
	case 3:
		console.log(num);
}
//输出两个3
举报

相关推荐

0 条评论