/*P18-流程控制-语句块*/

{
    /*
    var myName = '峰华';
    console.log(myName);//峰华

    let age = 15;
    console.log(age);//15

    const YEAR =2020;
    console.log(YEAR)
    */
}
//console.log(myName)//峰华
//console.log(age);// Uncaught ReferenceError: age is not defined
//console.log(YEAR);//(需先注释掉上面一行,才能运行到这行,因为语法错误就停在上面一行)Uncaught ReferenceError: age is not defined

/*P19-流程控制-if和else*/
/*
  console.clear();

var passcode = prompt('请输入暗号');
if (passcode === '天王盖地虎'){
    alert('登录成功');
} else{
    alert('登录失败')
}
*/
/** */

/*VH:补充,判断后将执行只一句的话,可以不用{}
if (b==0) return 0; 除数为0 就直接返回0
//if的简写,三元运算符简写的用法在P17章节。
var temperature = 10;
console.log(temperature > 15 ? '出门' : '在家');
var temperature = 16;
console.log(temperature > 15 ? '出门' : '在家');
/** */

/*P20-流程控制-if和else*/
/*
console.clear();

var role = prompt('请输入用户权限');
if (role==='超级管理员'){
    alert('跳转到超级管理员页面')
} else if(role==='管理员'){
    alert('跳转到管理员页面')
} else{
    alert('跳转到用户页面')
}
*/

/*P21-流程控制-switch和case*/

/*注释掉,给下节的语句运行提供方便:
var role= prompt('请输入用户权限');
switch(role){
    //除default之外,break是必须的。
    //如果没有break,会从匹配项目开始执行到底

    case '超级管理员':
      alert('超级管理员页面');
      break;
    case '管理员':
      alert('跳转到管理员页面');
      break;
    case '特殊用户';
      alert('跳转到特殊用户页面');
      break;
    case '一般用户';
      alert('跳转到一般用户页面');
      break; 
    default: //这里没有条件,default打头写
      alert('跳转到其他页面')
}
*/

/*P22-流程控制-while*/
/*
//感觉这里的while似乎不够深入,这里有个改变条件值的问题,才有意义

var password ='';
while (password !== '123456'){
    //先注释方便后续程序运行password = prompt('请输入密码');
}
console.log('登录成功!');
*/

/*P23-流程控制-do-while*/

/*
//x++先返回5,默默加1是6,6来到while条件,符合就继续循环
//这时x是6,打印6,随手增加1,是7
//7符合while条件,继续……
//直到10,符合条件,继续循环内,打印10,默默增加1,11来到while条件不符合停止循环,
//停止循环,继续赶路,来到console.log(x),打印出11
var x =5;
do {
    //这里一定要写造成x变化的语句,不然,一直符合条件,一直循环。
    console.log(x++);//5678910
} while (x >= 5 && x<= 10)
console.log(x);//11
*/

/*P24-流程控制-for循环*/
//for循环和while循环最大的区别在于计数类的循环

/*
3.步长:可以随便写
i++和++i结果一样,0-9为啥呢?不知道
i=i+2//02468
类似i=i+2都可以简写i+=2,,乘除取模等二元操作符都可以这样(下方有实例)
3个条件可选,但是避免死循环比如for(;;){……}
同样给while的条件设为true或者任何代表true的值(1,hello)或表达式,也会进入循环
*/
/*
for(let i = 0; i < 10; i=i+2){
    console.log(i);
}
*/
/*类似i=i+2都可以简写i+=2,,
//乘除取模等二元操作符都可以这样(下方有实例)
var i=3;
var j=3;
i = i+2
j += 2;//+=必须挨着写
console.log(i)//5
console.log(j)//5

i = i*2
j *= 2
console.log(i)//10
console.log(j)//10

i = i/2
j /= 2
console.log(i)//5
console.log(j)//5

i = i%3
j %= 3
console.log(i)//2
console.log(j)//2

i = i**3
j **= 3
console.log(i)//8
console.log(j)//8
*/

/*
//循环转换
//以下循环,打印0-9
var j = 0;
while (j < 10){
    console.log(j);
    j++;
}
*/

/*P25-流程控制-break和continue*/
/*
for(let i =0; i< 10; i++){
    console.log(i,'if前');
    if(i===6){
        break;
    }
    console.log(i,'if后');//等于6的时候,就跳出循环,这里见不到6
}
*/
/*打印结果如下:
index.js:159 0 "if前"
index.js:163 0 "if后"
index.js:159 1 "if前"
index.js:163 1 "if后"
index.js:159 2 "if前"
index.js:163 2 "if后"
index.js:159 3 "if前"
index.js:163 3 "if后"
index.js:159 4 "if前"
index.js:163 4 "if后"
index.js:159 5 "if前"
index.js:163 5 "if后"
index.js:159 6 "if前",这里是有6的,后面那个打印"if后"就停止没有了。
*/

//continue,跳过当前符合if条件的i值,直接进入下一个i
for(let i =0; i< 10; i++){
    console.log(i,'if前');
    if(i===6){
        continue;
    }
    console.log(i,'if后');//等于6的时候,就跳出循环,这里见不到6
}

/*
index.js:185 0 "if前"
index.js:189 0 "if后"
index.js:185 1 "if前"
index.js:189 1 "if后"
index.js:185 2 "if前"
index.js:189 2 "if后"
index.js:185 3 "if前"
index.js:189 3 "if后"
index.js:185 4 "if前"
index.js:189 4 "if后"
index.js:185 5 "if前"
index.js:189 5 "if后"
index.js:185 6 "if前"
index.js:185 7 "if前"
index.js:189 7 "if后"
index.js:185 8 "if前"
index.js:189 8 "if后"
index.js:185 9 "if前"
index.js:189 9 "if后"
*/


扫一扫 手机查看

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注