JS基础知识 运算符 分支语句

81 阅读1分钟

运算符

运算顺序与数学中的运算顺序一致,先乘除取余,后加减,有小括号先算小括号

算数运算符( + / - / * / / / % )
赋值运算符( = / += / -= / *= / /= / %= )

var a = 1
a = a + 1  //我自身 赋值为 我自身+1
console.log(a) //2
var a = 2 
a += 10   
a = a + 10  //12
console.log(a) //12
var a = 5
a /= 2
console.log(a) //2.5
var a = 7
a *= 2
console.log(a)//14
ar a = 9
a %= 2  //取余
console.log(a) //1
 

比较运算符( = / += / -= / *= / /= / %= )

比较结果只会返回一个布尔类型值,true 或者 false


var a = 4
console.log(a>3)//true
var a = 4
console.log(a>5)//false
var a = 3
console.log(a>=3)//true
var a = 3
console.log(a<=3)//true
var a = 4
console.log(a==3)//false
var a = 4
console.log(a===3)//false
var a = 4
console.log(a===4)//true
    

逻辑运算符( && / || / ! )

//&& (逻辑与 逻辑且) 
//|| (逻辑或)   
//! (非, 取反, 逻辑非)

/**
*逻辑与 逻辑且
*前一个为真, 就返回后一个 
*前一个为假, 就返回第一个
*/
var a = 4
console.log(a&&3) //前一个为真就返回后一个 3
var a = 0
console.log(a&&3)//前一个为假就返回前一个 0
var a = 3
/**
*逻辑或
*前一个为真(左侧为真), 返回左侧 
*前一个为假(左侧为假), 会返回右侧
*/
console.log(a||3)//前一个为假就返回后一个 3
var a = 4
console.log(a||3)//前一个为真就返回前一个  4
var a = 4

//逻辑非 , 取反
console.log(!a)//false (0 转为布尔值, false, (非0即为真))
var a = 4
console.log(!!a)//true

自增自减运算符( ++ / -- )

//变量名 前 或者 后 写上 ++(--)
var a = 4
//++ 在前, 先运算自增, 然后参与周围表达式
console.log(++a)//5
//++ 在后, 先参与周围表达式运算, 然后自增1
console.log(a++)//4

var a = 3
//-- 在前, 先参与自减, 然后参与周围表达式运算
console.log(--a)//2
//-- 在后, 先参与周围表达是运算, 然后自减
console.log(a--)//3

var cc = 5;
console.log(cc++); //5   
console.log(cc++);//6  5+1=6
console.log(++cc);//8  6+1+1=8

分支语句(基于某个条件,决定去执行某一段代码)

if分支语句

语法 (条件){当条件为真时,执行的代码}
else{ }当他前面所有的条件都为假时,他会执行

/*if 关键字 
*() 条件                     
*{} 要执行的代码                 
*else {} 当他前边的所有条件都为假时, 他会执行
*/
//例题
//a == 1时打印1    a == 2时打印2   a == 3时打印3
//如果a不满上诉条件 打印100
var a = 2
if(a == 1){console.log(1)}
else if(a == 2){console.log(2)}
else if(a == 3){console.log(3)}
else{console.log(100)}

switch 分支语句

switch(条件){
case value1: 执行语句1;
break;
case value2: 执行语句2;
break;
default:执行最后的语句
}

var a = 12;
switch(a){
case 12:
    console.log('a为12');
    break;
case 21:
    console.log('a为21');
    break;
    //当 case 后没有跟随 break 时, 会从第一个满足条件的 case 开始执行, 一直到\
    //最后一个或者说 到后续的 最近一个 break
    
default: //会在上述的条件(case) 都不满足时 执行的
console.log('空')
}

三元表达式(三目 三目运算符)

语法: 条件 ? 条件为真时执行:条件为假时执行

true ? console.log('条件为真') :console.log('条件为假') //三元表达式执行的代码段,只有一行