JS程序执行详解

顺序结构:按照由上到下的顺序一行一行地执行的程序结构
分支结构:根据不同的条件判断来决定程序执行走向的结构(也叫选择结构)
循环结构:需要重复执行同一操作的程序结构称为循环结构。

if 判断逻辑语句

if(true){
    //会执行的语句
}
if(false){
    //会跳过不执行的语句
}
if(判断条件){ //当if括号中结果为true时执行语句1,否则执行语句2
    //语句1
}else{
    //语句2
}

if(判断条件1){ //当条件1结果为true时执行语句1
    //语句1
}else if(判断条件2){ //当条件1结果为false而且条件2结果为true时执行语句2
    //语句2
}else{ //当条件1条件2结果都为false时执行语句3
    //语句3
}

我们都知道,if括号中只需要布尔类型值。那么在if判断中,所有的数据类型都会被隐式转换为布尔类型。
注意:0、-0、null、""、false、undefined 或者 NaN在if条件里结果为false

隐式类型转换

除了+运算符具有两层含义以外,- * /只有数学意义,所以当进行- * /运算的时候默认会将运算符两侧的数据类型隐式转换为数字类型,再进行运算。

var a = 2, b = "2";
if(a == b){
    alert("a和b相等");    // 会弹  
}
if(a === b){
    alert("a和b相等");    // 不会弹  
}
if(1 == true){
    alert("数字1是true");
}
if(a = b){
    alert("a和b相等");
}
//一个等号代表赋值操作,结果为等号右边的值

switch case多分支语句

switch(语句){  //语句的结果与每一条case内容进行匹配
    case 1:
       alert(1);
           break;
        case 2:
             alert(2);
             break;
        case 3:
            alert(3);
            break;
        default:
            alert(0);
}

注意switch的应用场景(有多个确定值需要判断的时候);
注意case穿透,要加break语句(如果程序没有发现break语句,那么解析器会继续向下解析);

var a = 1;
switch(a){ 
    case 1:
       alert(1);
    case 2:
        alert(2);
    case 3:
        alert(3);
    default:
        alert(0);
}
//每一个alert都会被执行,而且alert会阻断程序进程

练习

1.判断一个整数,属于哪个范围:大于0;小于0;等于0
2.判断一个整数是偶数还是奇数,并输出判断结果
3.开发一款软件,根据公式(身高-108)*2=体重,可以有10斤左右的浮动。来观察测试者体重是否合适
4.判断一个三位数是否是水仙花数(如:153 = 1^3 + 5^3 + 3^3,那么153就是水仙花数)

练习

1.点击切换div颜色
2.输入分数,判定成绩等级
3.输入年份,计算某一年是否是闰年
4.输入月份,显示当月的天数,要求:利用case穿透简化代码
5.输入数字,显示星期几,如:输入0,弹出星期日,以此类推(两种方法)
6.设计一个猜拳游戏:
假设: 1代表石头 2代表剪刀 3代表 布
计算机每次随机出现1—3中的任意一个数(parseInt (Math.random()*3) + 1)
玩家也有三种状态,用玩家出的数和计算机出的数进行比对,按照游戏规则比出胜负。

练习

1.根据一个数字日期,判断这个日期是这一年的第几天
例如: 20160211,计算后结果为42
2.制作一个表单,包括用户名,密码,电话
要求:
1)做好看点
2)点击保存按钮时,使用JS判断用户的联系电话是否为纯数字,如果用户输入有错误,使用alert()弹框警告
3)判断用户名是否填写,如果空白,使用alert弹框警告
4)判断密码长度,必须大于8位,否则alert警告
提示:通过length属性取得字符串的长度

var str = "hello";
str.length // 得到长度
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值