//js运算符 流程控制语句 if else、switch
//------------递增/递减------------------
var num = 1;
++num; //前置递增
num++;//后置递增
console.log(num);//3
/* 前置递增和后置递增如果单独使用,效果是一样的 开发时,大多使用后置递增
后置递增 口诀 :先返回原值 后自加1
前置:先自加 后运算 */
var age = 10;
console.log(age++ + 10);//20
console.log(age);//11
var a = 10;
++a;//a = 11;
var b = ++a + 2;// a = 12
console.log(b);//14
var c = 10;
c++;
console.log(c);//11
var d = c++ + 2;//
console.log(d);//13
var e = 1;
//console.log(e++);//1
//console.log(e);//2
var f = e++ + ++e;
console.log(f);//4
//-----------逻辑运算 &&(与) ||(或)!(非) ------------------
//1..逻辑与(&&)短路运算 中断了
/*
语法:表达式1 && 表达式2
如果表达式1为真 则返回表达式2 反之 返回表达式1
*/
console.log(123 && 456 && 'hello');//hello
console.log(0 && 456);//0
//2..逻辑或短路运算
// 表达式1为真则返回表达式1 如果表达式1为假 则返回表达式2
console.log(123 || 456);//123
console.log('' || 456 || 789);//456
//影响程序运行结果
var numb = 0;//布尔值为false
console.log(1234 || numb++);//1234
console.log(numb);//0
//---------流程控制-分支-----------------
// 顺序结构、分支流程控制(if)语句、
//a..分支流程控制 if语句
if(3>6){
alert('hello');//不执行
}else{
//alert('条件为假执行这个');
}
//var age = prompt('年龄?');
if(age>=18){
alert('可以去网吧');//单分支流程 双分支 多分支
}
//var year = prompt('请输入年份');
/* if(year % 4 == 0 && year % 100 != 0 || year % 400 == 0){
alert(year+'年是闰年');
}else{
alert(year+'年是平年年');
} */
//b.. ======switch 比if效率高===== 多分支语句 多选1
var switchNum = 2;
/* switchNum(变量)的值和case里面的值相匹配的时候是全等
(必须是值和数据类型一致才可以 即===) */
switch(switchNum){
case 1:
console.log('这是1');
break;
case 2:
console.log('这是2');//执行
break;
default:
console.log('没有匹配结果');
}
var week = '周一';
switch(week){
case '周一':
console.log('周一要上班了 TAT');
break;
case '周六':
console.log('休息日呀');
break;
default:
console.log('无结果');
}
//三元运算符 语法:条件表达式 ?表达式1 :表达式2
var numA = 10;
var res = numA > 5 ? '是的' : '不是的';
//console.log(res);//是的
// var hey = prompt('请输入一个数字');
// var heyRes = hey >= 10 ? hey : '0'+hey;
//console.log(heyRes);