<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
// 输入一个 4位数的整数 prompt()
// 解析出这个4位数的每位数字(个十百千),给每位数字都加上5,
// 然后用按10取余的结果代替该数字,
// 再将第一位(千)和第四位(个)交换,第二位(百)和第三位(十)交换
// 组成一个新的数字 输出
// var n = 8736;
var n = prompt('请输入一个四位数的整数');
console.log(n)
// // 提取到 每一位 数字
// var q = parseInt(n/1000);
// var b = parseInt(n/100)%10;
// var s = parseInt(n/10)%10;
// var g = n%10;
// console.log(q,b,s,g);
// // 给 每一位数字 +5
// q += 5;
// b += 5;
// s += 5;
// g += 5;
// console.log(q,b,s,g);
// // 在继续写 按10 取余
// q %= 10;
// b %= 10;
// s %= 10;
// g %= 10;
// console.log(q,b,s,g);
var q = (parseInt(n/1000)+5)%10;
var b = (parseInt(n/100)%10+5)%10;
var s = (parseInt(n/10)%10+5)%10;
var g = (n%10+5)%10;
console.log(q,b,s,g);
// 交换位置
var x = q;
q = g;
g = x;
x = b;
b = s;
s =x;
console.log(q,b,s,g);
// 组成新的数字
var nn = ''+q+b+s+g;
console.log(nn);
console.log('-----------------华丽的分割线--------------');
// 计算一下结果,并分析步骤
var num = 21;
var sum = num-- - --num + num-- + ++num + num++ - --num + ++num + num++;
// 21 19 19 19 19 19 20 20
console.log(sum); // 80
console.log(num); // 21
// 消化 今天的内容,预习后面的内容
</script>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
// 自动数据类型转换--隐式转换
// 在 使用 一些 运算符的过程中 无形中 会发生 数据类型的转换
// 将 其他类型的数据 转换成 string
// +
// 任何类型的数据 与 字符串 相加 结果都是 字符串拼接
var num1 = 56;
var s1 = 'abc'+num1;
console.log(s1); // 'abc56'
var s2 = ''+true;
console.log(s2); // 'true'
console.log(typeof s2); // 'string'
// 将 其他类型的数据 转换成 number
// + - * / % > < >= <= == != ++ -- -= *= /= %=
// +
// 在 针对字符串 进行转换时 需要字符串前 单独使用一个 加号,这个加号不参与运算
// 针对 非字符串的值 会进行 正常数据类型转换
var num = +'999';
console.log(num); // 999
var sum1 = 33 + +'55';
console.log(sum1); // 88
var sum2 = 22 + true;
console.log(sum2); // 23
var sum3 = 56 + null;
console.log(sum3); // 56
console.log(21+undefined); // NaN
// - * / % -= *= /= %= ++ --
var n1 = '5';
console.log(n1++); // 5
console.log(n1); // 6
var n2 = true
console.log(++n2); // 2
console.log(5*'3'); // 15
console.log(12%'5'); // 2
var n3 = '23';
n3 -= 5;
console.log(n3); // 18
// > < >= <= == !=
console.log(13>'5'); // true
console.log(2>true); // true
console.log(true>false); // true
console.log(23 == '23'); // true
console.log(1 == true); // true
console.log('-----------------华丽的分割线--------------');
// 将 其他类型的数据 转换成 boolean
// !
console.log(!45); // false
console.log(!''); // true
console.log(!!''); // flase
</script>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
// 与 的 逻辑短路
var s1 = 10 && 5;
// true true
console.log(s1); // 5
var s2 = 0 && 5;
// flase true
console.log(s2); // 0
var s2 = 100 && 0;
// true false
console.log(s2); // 0
// 或 的 逻辑短路
var n1 = 10 || 5;
// true true
console.log(n1); // 10
var n2 = 0 || 5;
// flase true
console.log(n2); // 5
var n3 = 50 || 0;
// true false
console.log(n3); // 50
var n4 = false || 0;
// false false
console.log(n4); // 0
</script>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
// if 分支语句 --- 单分支
// if(条件判断的表达式){
// 当 条件判断的表达式 结果为true时 会 执行的代码语句
// }
// 如果 当 条件判断的表达式结果为true时,只有一个句代码需要执行,可以简写
// 如果 需要执行的代码语句 大于1条,就不能简写
// 可以省略花括号,将 执行的代码语句和if写在一行
// if(条件判断的表达式) 当 条件判断的表达式 结果为true时 会 执行的代码语句
// 输入一个数字 判断这个数字是否为 偶数,如果是偶数 弹出警告框说明一下
// 任何一个偶数 按2取余的结果 都是 0
// num1%2===0
// num1%2!==1
var num1 = prompt('请输入一个数字');
// if(num1%2===0){
// alert(num1+'是一个偶数');
// }
if(num1%2!=1) alert(num1+'是一个偶数');
</script>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
// if 分支语句 --- 单分支
// if(条件判断的表达式){
// 当 条件判断的表达式 结果为true时 会 执行的代码语句
// }
// 如果 当 条件判断的表达式结果为true时,只有一个句代码需要执行,可以简写
// 如果 需要执行的代码语句 大于1条,就不能简写
// 可以省略花括号,将 执行的代码语句和if写在一行
// if(条件判断的表达式) 当 条件判断的表达式 结果为true时 会 执行的代码语句
// 输入一个数字 判断这个数字是否为 偶数,如果是偶数 弹出警告框说明一下
// 任何一个偶数 按2取余的结果 都是 0
// num1%2===0
// num1%2!==1
// var num1 = prompt('请输入一个数字');
// if(num1%2===0){
// alert(num1+'是一个偶数');
// }
// if(num1%2!=1) alert(num1+'是一个偶数');
// if 分支语句 --- 双分支
// if(条件判断的表达式){
// 当 条件判断的表达式 结果为true时 会 执行的代码语句
// }else{
// 当 条件判断的表达式 结果为false时 会 执行的代码语句
// }
// 说明;
// 如果 条件判断的表达式的结果为true,就会执行 if后的花括号中的代码语句
// 否则(条件判断的表达式的结果为false) 就会执行 else后的花括号中的代码语句
// 输入一个数字 判断这个数字是奇数还是偶数,弹出警告框说明一下
// 一个数字按2取余 结果为0就是偶数,结果为1就是奇数
var num2 = prompt('请输入一个整数数字');
console.log(num2 == "");
if(num2==null || num2=='' || isNaN(num2)){
alert('请输入一个正确整数数字')
}else{
if(num2%2==0){
alert(num2+'是一个偶数');
}else{
alert(num2+'是一个奇数');
}
}
// 输入一个数字,判断这个数字能不能被 3 和 7 同时整除
// 输入年份,计算某一年是闰年还是平年(闰年能被4整除且不能被100整除,或能被400整除)
// 四年一闰百年不闰,四百年再闰
// 年份%4===0 && 年份%100!=0 || 年份%400===0
</script>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
// 输入一个数字,判断这个数字能不能被 3 和 7 同时整除
// var num1 = prompt('请输入一个数字');
// console.log(num1);
// if(num1===''|| num1===null || isNaN(num1)){
// alert('请正确输入一个数字')
// }else{
// if(num1%3===0 && num1%7===0){
// alert(num1+'这个数字可以被3和7同时整除')
// }else{
// alert(num1+'这个数字不不不不不可以被3和7同时整除');
// }
// }
// 输入年份,计算某一年是闰年还是平年(闰年能被4整除且不能被100整除,或能被400整除)
// 四年一闰百年不闰,四百年再闰
// 年份%4===0 && 年份%100!=0 || 年份%400===0
// var year = prompt('请输入一个年份数字');
// if(year%4==0&&year%100!=0 || year%400===0){
// alert(year+'年是闰年');
// }else{
// alert(year+'不是闰年,是平年')
// }
</script>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
// if 分支语句 --- 单分支
// if(条件判断的表达式){
// 当 条件判断的表达式 结果为true时 会 执行的代码语句
// }
// 如果 当 条件判断的表达式结果为true时,只有一个句代码需要执行,可以简写
// 如果 需要执行的代码语句 大于1条,就不能简写
// 可以省略花括号,将 执行的代码语句和if写在一行
// if(条件判断的表达式) 当 条件判断的表达式 结果为true时 会 执行的代码语句
// 输入一个数字 判断这个数字是否为 偶数,如果是偶数 弹出警告框说明一下
// 任何一个偶数 按2取余的结果 都是 0
// num1%2===0
// num1%2!==1
// var num1 = prompt('请输入一个数字');
// if(num1%2===0){
// alert(num1+'是一个偶数');
// }
// if(num1%2!=1) alert(num1+'是一个偶数');
// if 分支语句 --- 双分支
// if(条件判断的表达式){
// 当 条件判断的表达式 结果为true时 会 执行的代码语句
// }else{
// 当 条件判断的表达式 结果为false时 会 执行的代码语句
// }
// 说明;
// 如果 条件判断的表达式的结果为true,就会执行 if后的花括号中的代码语句
// 否则(条件判断的表达式的结果为false) 就会执行 else后的花括号中的代码语句
// 输入一个数字 判断这个数字是奇数还是偶数,弹出警告框说明一下
// 一个数字按2取余 结果为0就是偶数,结果为1就是奇数
// var num2 = prompt('请输入一个整数数字');
// if(num2==null || num2=='' || isNaN(num2)){
// alert('请输入一个正确整数数字')
// }else{
// if(num2%2==0){
// alert(num2+'是一个偶数');
// }else{
// alert(num2+'是一个奇数');
// }
// }
// if 分支语句 --- 多分支
// if(条件判断表达式1){
// 当 条件判断表达式1 结果为true时 会 执行的代码语句
// }else if(条件判断表达式2){
// 当 条件判断表达式2 结果为true时 会 执行的代码语句
// }else if(条件判断表达式3){
// 当 条件判断表达式3 结果为true时 会 执行的代码语句
// }else{
// 如果 以上的 条件判断表达式 结果都不为true,最终执行 else中的代码语句
// }
// 说明:
// 首先 判断 条件表达式1 如果成立(true),执行后面花括号对应的代码
// 如果 条件表达式1 如果不成立(false),则继续 执行下一个 条件判断表达式2
// 成立 执行对应代码,不成立再往下一个判断表达式3 执行,
// 成立 执行对应代码,不成立再往下一个判断表达式4 执行,
// 如果 所有的 条件判断表达式 都不成立,最终执行 最后的else中的代码
// 整个过程中 如果哪一个条件成立了,就不会在往下执行了
// 输入一个数字 判断这个数字是奇数还是偶数,弹出警告框说明一下,
// 如果输入的是非数字提示重新输入
// var num3 = prompt('请输入一个数字');
// if(num3=='' || num3==null || isNaN(num3)){
// alert('请正确输入一个数字');
// }else if(num3%2==0){
// alert(num3+'是一个偶数');
// }else if(num3%2==1){
// alert(num3+'是一个奇数');
// }
// 输入你的高考成绩,判断 你可以上 什么层次的大学
// 总分 750 最低分 0
// 分数 大于等于700 上 985
// 分数 大于等于650 小于700 上 211
// 分数 大于等于550 小于650 上 一本
// 分数 大于等于450 小于550 上 二本
// 分数 大于等于350 小于450 上 三本
// 分数 大于等于200 小于350 上 大专/高职
// 分数 小于200 上 社大
var sum = prompt('请输入你的高考成绩');
if(sum=='' || sum==null || isNaN(sum) || sum>750 || sum<0){
alert('你确定你的成绩没有问题吗?如果确定我估计你也没希望了');
}else if(sum<=750 && sum>=700){
alert('我可真没白培养你啊,棒棒哒,985等你');
}else if(sum<700 && sum>=650){
alert('棒棒哒,毕业来千锋上班哦,我也是211');
}else if(sum<650 && sum>=550){
alert('一本其实也不错,我不歧视你,因为我也不是');
}else if(sum<550 && sum>=450){
alert('二本可以的,只不过没我好,连烫头的资格都没有');
}else if(sum<450 && sum>=350){
alert('三本不错的,我找对象我就找你,你家里肯定有钱');
}else if(sum<350 && sum>=200){
alert('宇宙是你的,谁谁都是你的,你才是真正的未来,大专生未来可期')
}else{
alert('上面的以后都来我公司上班哦,月薪给你开3500');
}
</script>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
// 三目运算符 --- 三元运算符
// 语法: ?:
// 条件表达式?成立true执行:不成立false执行;
// 判断 一个 数据是 奇数还是偶数
var num = prompt('请输入一个数字');
// num%2==0?alert(num+'是偶数'):alert(num+'是奇数');
// if(num%2==0){
// alert(num+'是偶数');
// }else{
// alert(num+'是奇数');
// }
// 可以 选择性的赋值
var abc = num%2==0?1:0;
console.log(abc);
// if(num%2==0){
// var abc = 1;
// }else{
// var abc = 0;
// }
</script>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
// switch 分支语句
// switch 分支语句 做的 全等判断
// switch(判断的值){
// case 值1:
// // 值1 和 判断的值 如果全等 执行的代码
// break;
// case 值2:
// // 值2 和 判断的值 如果全等 执行的代码
// break;
// case 值3:
// // 值3 和 判断的值 如果全等 执行的代码
// break;
// case 值4:
// // 值4 和 判断的值 如果全等 执行的代码
// break;
// ......
// default:
// // 当 以上 case后的值 和 判断的值 都不全等 执行的代码
// break;
// }
// 输入 0-6的数字,判断是 星期几
// 0---星期日 1---星期一 2---星期二 .....
// var week = +prompt('请输入0-6之间的整数数字');
// console.log(week,typeof week);
// 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;
// }
// 输入一个 月份,显示 当月的天数
var month = Number(prompt('请输入您要查看的月份数字'));
console.log(month);
// switch语句中 break 是必须的,
// 当 判断的值 和 case值 匹配全等后 会 执行 当前case下的代码
// 直到执行到 break语句 会 停止 代码的执行
// 如果在 switch语句中缺失了break就会发生 switch穿透
// 当 判断的值 和 case值 匹配全等后 会 执行 当前case下的代码
// 如果 在执行的过程中 没有 遇到 break语句 就会一直向下执行代码
// 直到在某一处位置 遇到 break语句 为止
// 如果 一直没有遇到 就会 一直向下执行代码
// switch穿透是指当switch语句中某一个case被匹配到并且该case下的语句会被执行,
// 当case部分逻辑执行完毕之后如果没有break的话就会一直往下一个case匹配。
// 也就是说在switch语句中当case被匹配到,程序只有遇到break才会跳出switch
// 但是在某些情况写 可以利用 switch的穿透 达成一些效果,减少代码的书写
switch(month){
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
alert(month+'月有31天');
break;
case 2:
alert(month+'月 平年有28天 闰年有29天');
break;
case 4:
case 6:
case 9:
case 11:
alert(month+'月有30天');
break;
default:
alert('请正确输入');
break;
}
// switch(month){
// case 1:
// alert(month+'月有31天');
// break;
// case 2:
// alert(month+'月 平年有28天 闰年有29天');
// break;
// case 3:
// alert(month+'月有31天');
// break;
// case 4:
// alert(month+'月有30天');
// break;
// case 5:
// alert(month+'月有31天');
// break;
// case 6:
// alert(month+'月有30天');
// break;
// case 7:
// alert(month+'月有31天');
// break;
// case 8:
// alert(month+'月有31天');
// break;
// case 9:
// alert(month+'月有30天');
// break;
// case 10:
// alert(month+'月有31天');
// break;
// case 11:
// alert(month+'月有30天');
// break;
// case 12:
// alert(month+'月有31天');
// break;
// default:
// alert('请正确输入');
// break;
// }
// if(month==1 || month==3 || month==5 || month==7 || month==8 || month==10 || month==12){
// alert(month+'月有31天');
// }else if(month==2){
// alert(month+'月 平年有28天 闰年有29天')
// }else if(month==4 || month==6 || month==9 || month==11){
// alert(month+'月有30天');
// }else{
// alert('请正确输入');
// }
// if(month==1){
// alert(month+'月有31天');
// }else if(month==2){
// alert(month+'月 平年有28天 闰年有29天')
// }else if(month==3){
// alert(month+'月有31天');
// }else if(month==4){
// alert(month+'月有30天');
// }else if(month==5){
// alert(month+'月有31天');
// }else if(month==6){
// alert(month+'月有30天');
// }else if(month==7){
// alert(month+'月有31天');
// }else if(month==8){
// alert(month+'月有31天');
// }else if(month==9){
// alert(month+'月有30天');
// }else if(month==10){
// alert(month+'月有31天');
// }else if(month==11){
// alert(month+'月有30天');
// }else if(month==12){
// alert(month+'月有31天');
// }else{
// alert('请正确输入');
// }
</script>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
// if分支语句 和 switch分支语句的区别
// if分支语句 适合做 区间判断,同时也可以做 等值(固定值)判断
// switch分支语句 适合做 等值(固定值)判断
// 其实可以用 switch语句做 区间判断 但是 我们不会用
// 输入一个成绩判断该成绩属于哪个分类
// 90分及以上,优秀;
// 80分及以上,良好
// 70分及以上,一般
// 60分及以上,及格
// 60分以下,不及格
var sum = prompt('请输入你的成绩');
switch(true){
case sum<=100&&sum>=90:
alert('你的成绩 优秀');
break;
case sum<90&&sum>=80:
alert('你的成绩 良好');
break;
case sum<80&&sum>=70:
alert('你的成绩 一般');
break;
case sum<70&&sum>=60:
alert('你的成绩 及格');
break;
case sum<60:
alert('你的成绩 不及格');
break;
}
</script>
</body>
</html>