前端基础——javascript的流程控制语句

JavaScript条件语句

if语句

语法一:

if( condition ){

statement1;

}

var your_age =15;
if(your_age<18){
    alert("未满十八岁,禁止观看!");
}

  

语法二:

if( condition ){

statement1;

}else{

statement2;

}

var your_age =25;
if(your_age<18){
    alert("未满十八岁,禁止观看!");
}else{
    alert("你已经成年了,要为自己的行为负责!");
}

  

语法三:

if( condition ){

statement1;

}else if(condition){

statement2;

}…else{

statement3;

}

var user_name = prompt("请输入你的年龄:");
// 据说养成先搭机构的习惯,会有好处的
if (user_name>=18 && user_name<=59){
    alert("感悟人生吧!");
}else if (user_name>59){
    alert("享受人生吧!");
}else{
    alert("你还未成年,去接触人生吧!");
}

  

prompt()

语法:prompt()

功能:弹出输入框

返回值:

1、点击确定,返回输入内容

2、点击取消,返回null

var your_age = prompt("请输入的你年龄!");
if (your_age>=18){
    alert("你已经成年,可以为自己的行为负责了!");
}else{
    alert("你还没成年,老实点!");
} 

alert()

语法:alert()

功能:弹出警告对话框

length

语法:string.length

功能:获取string字符串的长度

返回值:number

if语句的嵌套

var pass_word = prompt("请输入密码:");
if (pass_word.length == 6){
    if (isNaN(pass_word)){
        alert("请输入6位纯数字密码!");
    }else{
        alert("密码设置完成!");
    }
}else{
    alert("请输入六位密码!");
}

 

一道面试题:下面代码返回的结果是?答案:Number,NaN是一种特殊的number数据类型

var str = "abc123";
var num = parseInt(str);
if (num==NaN){ // 虽然num返回NaN,但是NaN和任何内容都不相等,包括NaN它本身
    alert("NaN"); 
}else if (num==123){
    alert(123);
    // 数据类型中的 数字型的number首字母是小写,这点要注意
}else if (typeof num == "number"){
    alert("Number")
}else{
    alert("str");
}

获取星期

语法:new Date().getDay()

功能:获取星期

返回值:number (0-6),星期日返回的是0,其他的与系统的星期相对应。

var week = new Date().getDay();
console.log(week); // 4 返回当天的星期 当天星期四

  

输出

语法:document.write(“内容”)

功能:向浏览器输出内容

switch语句

多条件判断 在三种情况以内用 if 语句,超过三种情况的话用 switch 语句解决

语法:

switch( expression ){

case value:statement

break;

case value:statement

break;

……

default:statement

}

// 多条件判断 在三种情况以内用 if 语句,超过三种情况的话用 switch 语句解决
var week = new Date().getDay();
console.log(week); // 4 返回当天的星期 当天星期四
switch (week){
    case 0:
        document.write("星期日");
        break; //退出
    case 1:
        document.write("星期一");
        break;
    case 2:
        document.write("星期二");
        break;
    case 3:
        document.write("星期三");
        break;
    case 4:
        document.write("星期四");
        break;
    case 5:
        document.write("星期五");
        break;
    // case 6:
    //     document.write("星期六");
    //     break;
    default: // 最后一种情况,不用在去判断了,直接用default,表示最后一种情况
        document.write("星期六");
}

  优化一下上面代码的写法,如下所示:

// 优化一下代码,document.write 写的太多了
var week = new Date().getDay();
var weekstr = ""; // 定义一个空字符串
console.log(week); // 4 返回当天的星期 当天星期四
switch (week){
    case 0:
        weekstr="日";
        break; // 退出
    case 1:
        weekstr="一";
        break;
    case 2:
        weekstr="二";
        break;
    case 3:
        weekstr="三";
        break;
    case 4:
        weekstr="四";
        break;
    case 5:
        weekstr="五";
        break;
    // case 6:
    //     document.write("星期六");
    //     break;
    default: // 最后一种情况,不用在去判断了,直接用default,表示最后一种情况
        weekstr="六";
}
document.write("星期" + weekstr);

  

JavaScript循环语句

for语句

语法:

for(语句1;语句2;语句3){

被执行的代码块;

}

语句 1 :在循环(代码块)开始前执行

语句 2: 定义运行循环(代码块)的条件

语句 3 :在循环(代码块)已被执行之后执行

// 输出 1 到 100
for (var i=1;i<=100;i++){
    document.write(i + "<br/>");
}
// 输出 99 到 1
for (var j=99;j>0;j-=2){
    console.log(j);
}

  

嵌套

说明:

当循环与循环发生嵌套时遵循下列规则:

1、外层为假时内层不执行;

2、先执行外层再执行内层,直至内层的条件为假时再返回外层去执行。.

for (var i=1;i<=3;i++){ // 变量一定不要忘了 var 声明
    document.write(i + "<br />");
    for (j=1;j<=5;j++){
        document.write(j+ "<br />");
    }
}

打印乘法表

for (var i=1;i<=9;i++){
    for (var j=1;j<=i;j++){
        document.write(i+"*"+j+"="+i*j+" ");

    }
    document.write("<br />");
}

 

while语句

语法:

while(条件){

需要执行的代码;

}

var i=1; // 初始写在外面
while(i<101){
    document.write(i + "<br />");
    i++; // 循环执行后,必须改变变量
}

  

do-while 语句

语法:

do{

需要执行的代码;

}while(条件)

说明:这种语法的循环至少要被执行一次。

var i = 18;
do{
   if (i%2==0){
       console.log(i);
   }
   i++;
}while (i<11);

  

// 求 1+2+3+4+5+……+100的和
var sum=0; // sum 和
var i = 1;
while (i<=100){
    sum+=i;
    i++;
}
document.write(sum); // 5050

  

for与while的区别

for:适合已知循环次数的循环体

while:适合未知循环次数的循环体

break语句

break:立即退出循环

continue 语句

continue:结束本次循环,继续开始下一次。

// 打印所有0到50之间除了20和30之外5的倍数
for (var n=0;n<=50;n+=5){
    if (n==20 || n==30){
        continue;
    }
    console.log(n);
}

  

 

posted @ 2018-03-29 19:58  千行路  阅读(235)  评论(0编辑  收藏  举报