上午:
1、案例:判断平年闰年
2、案例:判断分数
3、特殊数据类型判断
下午:
1.三目运算式
2.switch case语句:3种用法
2.1 常规用法 break
案例:星期
2.2 特殊 穿透(其中的某些case里面需要执行的语句是一样的)
案例:每个月份多少天
2.3可以让case接受表达式 switch(true)
案例:成绩
- for循环 while循环
1、判断平年闰年
判断平年闰年思路总结:
1、为按钮注册点击事件
2、获取inp1第一个输入框的值
3、判断条件重头戏:判断有没有输入,分2种情况:有/没有
3)有输入的话,判断输入的是不是数字,分2种情况:是数字/不是数字
3_1)输入是数字的话,判断是闰年?世纪闰年?平年?
4、这里后面补充了一点:判断输入的是不是四位数?判断条件是:a<1000||a>9999 记住千万不要写错了!
<span>请输入一个四位数</span>
<input type="text" id="inp1">
<button id="btn">计算</button>
<script>
// 为按钮注册点击事件
btn.onclick = function () {
// 获取inp1输入框的值
var a = inp1.value;
// 判断条件
// 1)判断有没有输入:第一种情况:没有输入
if (a == '') {
alert('输入为空')
} else {
// 1)判断有没有输入:第二种情况:有输入
console.log('已经输入了')
// 2)判断输入的是不是数字:第一种情况:不是数字
if (!(a * 1)) {
alert('请输入数字,而不是文字')
} else {
// 2)判断输入的是不是数字:第二种情况:是数字
console.log('是数字')
// 3)判断是闰年?世纪闰年?不是闰年?
if (a % 4 == 0 && a % 100 !== 0) {
alert('是闰年')
} else if (a % 400 == 0) {
alert('世纪闰年')
} else if(a<1000||a>9999){
alert('请输入四位数')
}else{
alert('平年')
}
}
}
}
</script>
2、判断分数
判断分数思路整理:
1、为按钮注册点击事件
2、获取inp1输入框的值
3、判断条件
<input type="text" id="inp1">
<button id="btn">结果</button>
<input type="text" id="inp2">
<script>
// 给按钮添加点击事件
btn.onclick = function () {
// 获取inp1输入框的值
var a = inp1.value;
// 测试是否有结果输出
console.log(a);
// 判断条件
if (a < 60) {
alert('不及格')
} else if (a < 70 && a >= 60) {
alert('及格')
} else if (a < 80 && a >= 70) {
alert('良好')
} else if (a < 90 && a >= 80) {
alert('优秀')
} else{
alert('666')
}
}
</script>
3、特殊数据类型判断
console.log(1==true)//true
console.log(null==undefined) //true
console.log(NaN==NaN) //false
下午:
三目运算符
/*
三目运算符
表达式1 ? 表达式2 : 表达式3
注意:双分支语句(if else)可以写成三目运算符
*/
// 案例一:判断奇数偶数
// 随机生成一个二位数
var a = parseInt(Math.random() * 100)
console.log(a);
// 判断是否是偶数 就是和2取余的值是否是0
var t = (a % 2 == 0) ? '偶数' : '奇数';
document.write(t);
// 案例二:判断是闰年还是平年
// 随机生成一个四位数,以下三种方式都可以:
var ran = Math.floor(Math.random() * 9000) + 1000;
var ran1 = Math.round(Math.random() * 9000) + 1000;
var ran2 = parseInt(Math.random() * 9000 + 1) + 1000;
// 然后再用三目表达式判断是平年还是闰年
var res = (ran % 4 == 0 && ran % 100 !== 0 || ran % 400 == 0) ?'闰年':'平年';
document.write(res);
Swith case语句
Switch语句第一种:常规写法:break
var week = prompt('请输入一个数字')*1
switch(week){
case 0 :
alert('星期天')
break;
case 1 :
alert('星期一')
break;
case 2 :
alert('星期二')
break;
case 3 :
alert('星期三')
break;
case 4 :
alert('星期四')
break;
case 5 :
alert('星期五')
break;
case 6:
alert('星期六')
break;
default:
alert('输入值不合法')
break;
}
Switch语句第二种情况:case穿透
// -0意思是把字符串隐式转为数据类型
var month = prompt('请输入月份')-0
switch(month) {
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
alert("该月有31天");
break;
case 4:
case 6:
case 9:
case 11:
alert("该月有30天");
break;
case 2:
alert("该月有28天");
break;
default:
alert("请输入正确的月份");
break;
}
Switch语句第三种情况:可以让case接受表达式 switch(true)
var score= parseInt(prompt('请输入一个数字'))
switch(true) {
case score<60:
alert('不及格');
break;
case score>=60&&score<70:
alert('及格');
break;
case score>=70&&score<80:
alert('良好')
break;
case score>=80&&score<90:
alert('优秀');
break;
case score>=90:
alert('666')
break;
}
while循环
// 循环:重复的做某一件事
/* 第一种:while语句,需要注意以下属性
var i = 0;初始值
i<10循环条件
i++ 计数器
i+ 多少次
*/
var i = 0;
while (i < 10) {
document.write(i + '我太难了<br />');
i++;
}
for循环
for(初始值,结束条件,初始值变化){
循环体
}
for循环语句的读取顺序:先读初始值,然后判断,再执行循环体,最后++
1) var i = 1 只读一次
2) 先执行判断
3) 再执行循环体
4) 最后执行++
*/
//案例一: 随机产生一个四位数,并遍历
for (var i = 1; i < 1000; i++) {
var ran = Math.floor(Math.random() * 9000) + 1000;
console.log("第" + i + "次的四位随机数:" + ran);
}
// 案例二: 1000以内既能被3整除,又能被7整除的数,4个排一行
//思路:
//1)首先把0-1000的数全部遍历一次 for循环
// 2)判断: 是否能同时被3和7整除 if 整除 % &&
// 符合条件就输出 document.write
// 发现数字都连在一起
// 加空格
// 3) 判断:新的需求:四个一行
// 思路:声明一个变量来计数 注意变量声明的位置(一定要写在外面)
//判断能被4整除就换行
var j = 0;
for (var i = 0; i < 1000; i++) {
if (i % 3 == 0 && i % 7 == 0){
document.write(i+' ');
j++;
if(j%4==0) {
document.write('<br />')
}
}
}