例子:判断成绩级别并输出 按照从大到小的思路来写
var score = prompt("请你输入你的分数");
if (score >= 90) {
alert('宝贝你是我的骄傲');
} else if (score >= 80) {
alert("2"); //到达这个循环的一定小于90分,所以不用在写了;
} else if (score >= 70) {
alert("3");
} else if (score >= 60) {
alert("4");
}
三元表达式:
三元表达式也能做一些简单的 条件选择。有三元运算符组成的式子称为三元表达式,就是简化版的if else
//1.有三元运算符组成的式子称为三元表达式
//2.语法结构
// 条件表达式 ? 表达式1:表达式2
//4.如果条件表达式结果为真,则返回表达式1的值,如果条件表达式为假,则返回表达式2的值
var num = 10;
var result = num > 5 ? "是的" : "不是的";
alert(result); //输出结果为result
三元表达式的例子:
//用户输入0~59之间的数字,如果数字小于10,则在这个数字前面补0,否则不做操作,直接输出
var num = prompt("请您输入一个数字");
var num = num < 10 ? '0' + num : num;
alert(num);
分支流程控制switch语句:
当要针对变量设置一系列的特定值的选项时,就可以使用switch
//1.switch语句也是多分枝语句 也可以实现多选一
//2.语法结构 switch 转换开关 case 小例子或者选项的意思
switch(表达式){
case value1:
执行语句1;
break;
case value2:
执行语句2;
break;
···
default:
执行最后的语句;
}//利用我们表达式的值和case后面的选项相匹配,如果匹配上,就执行该case的语句,如果没有匹配上,那么执行default里面的语句
switch注意事项:表达式我们经常写成变量,我们num的值和case里面的里面的值是全等,必须是值和数据类型一致才可以
num===1。
如果当前的case里面没有break,则不会退出switch,是继续执行下一个case。
例子:
查询水果单价,输入一种水果,弹出对应价格,如果没有则显示没有此水果
var fruit = prompt("请您输入一种水果");
switch (fruit) {
case '苹果': //苹果要加引号 代表是字符串 因为输入的水果也是字符串,必须要全部相等
alert('25yuan ');
break;
case '香蕉':
alert('34yuan');
break;
case '梨':
alert('76yuan ');
break;
case '车厘子':
alert('100yuan');
break;
default:
alert('没有此水果');
break;
}
注意要点:case后面的水果名称一定要加引号代表是字符串,因为case后面的语句要和输入的水果名完全相等。
switch和if else if 之间的差别:
1.一般情况下,可以相互转换
2.switch语句经常用于case条件比较确定的条件,而if else if语句更加灵活,常用于范围判断(大于,等于某个范围)。
3.switch判断条件的时候直接跳到执行语句去执行,但是if else if需要按照顺序一步步去执行。switch效率更高,分支较少用if比较好。
javacript循环结构:
for循环 双重循环:
for循环:由循环体以及终止条件组成的语句,被称之为循环语句。
//for循环 重复执行某些代码,通常与计数有关系。
//初始化便令啊就是用var生命的一个普通变量,条件表达式就是用来决定每一个循环是否继续执行,就是终止的
//条件,操作表达式就是每次循环最后执行的代码,经常用于我们计数器变量进行更新。
断点调试可以帮我们观察程序的运行过程。
例子1.:利用for循环求1~100之间的所有奇数的和以及所有偶数的和
//偶数用even表示,奇数用odd表示
var even = 0;
var odd = 0;
for (var i = 1; i <= 100; i++) {
if (i % 2 == 0) {
even += i;
} else {
odd += i;
}
}
alert('奇数的和是' + odd);
alert('偶数的和是' + even);
例子2:求一百之内能被三整除的数字。
var three = 0;
for (var i = 1; i <= 100; i++) {
if (i % 3 == 0) {
three += i;
}
}
alert(three);
例子3:要求输入班级人数,之后依次输入每个学生的成绩,最后打印出该班级的总的成绩以及平均成绩。
//先输入班级总人数,然后依次弹出每个学生的成绩输入,然后弹出学生的总成绩,然后弹出学生的平均成绩。
var allstudent = prompt("请你输入班级的总人数");
var allscore = 0;
for (var i = 1; i <= allstudent; i++) {
var score = prompt('请输入第' + i + '个学生的成绩');
allscore = allscore + parseFloat(score); //这里的输出结果不对,是因为从prompt取过来的数据都是字符串型的。
}
var average = allscore / allstudent
alert("同学的总成绩是" + allscore);
alert("平均成绩是" + average);
注意从prompt取过来的数是字符类型的 要转换为数字型 (复习怎么转换) 才能进行计算!!!
双重for循环:把里面的循环看成外层循环的语句,外层的循环执行一次,里面的循环执行全部。
例子1:
//打印五个小星星
var str = "";
for (var i = 0; i < 5; i++) { //控制打印5行
for (var j = 0; j < 5; j++) { //控制每行打印五个五个符号
str += '&';
}
str += '\n'; //打印五个符号之后换行打印
}
console.log(str);
/* &&&&&
&&&&&
&&&&&
&&&&&
&&&&& */
例子2:要求输入行数和列数,然后输出对应行数和列数的信息
//要求用户输入行数和列数,之后再控制台打印出用户输入行数和列数的信息
//先输入行数命名为 row
//再输入列命名为line,输入行数和列数
//先输入多少行,然后再控制一行打印多少个就是列数
var str = "";
var row = prompt("请输入行数");
var line = prompt("请输入列数");
for (var i = 0; i < parseFloat(row); i++) {
for (var j = 0; j < parseFloat(line); j++) {
str += '$';
}
str += '\n';
}
console.log(str);
例子3:打印
$$$$$$$$$$
$$$$$$$$$
$$$$$$$$
$$$$$$$
$$$$$$
$$$$$
$$$$
$$$
$$
$ 算法如下图
//主要有十行,第一行有十个,定义行 row =10
//再定义一个变量逐步递减 从十 知道
var str = "";
for (var i = 0; i < 10; i++) {
for (var j = i; j < 10; j++) {
str += "$";
}
str += "\n";
}
console.log(str);
例子4:
制作九九乘法表: 效果如下图:
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
1*4=4 2*4=8 3*4=12 4*4=16
1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81
//做玖玖乘法表
//定义行 row 第二个数是行 定义列 从1到列
var str = "";
var result = 0;
for (var i = 1; i < 10; i++) {
for (var j = 1; j <= i; j++) {
result = j * i;
str = str + j + '*' + i + '=' + result + ' ';//注意字符加法的细节
}
str += '\n';
}
console.log(str);
for循环小结:
·for循环可以重复执行某些相同的代码/
可以重复执行些许不同的代码因为有计数器/
可以重复执行某些操作,比如算数运算符加法操作/
双重循环可以做的更多,更好看的效果; 分析很重要 !
while循环:
while(条件表达式){
//循环体;
}
当符合条件表达式的时候,执行循环体,当不符合条件表达式的时候,就不执行循环体,可以将变量的变化添加到循环体。
do while循环:
do {
//循环体
}while(条件表达式)
//dowhile 是先执行一次循环体然后再判断是否符合条件。
循环小结:
js循环中有for,while,do while;
while是先判断再执行,dowhile是先执行,后判断。
for循环是最常用的。
continue关键字:
是用于立即跳出本次循环,继续下一次循环(本次循环体中的continue之后的代码就会少执行一次)
例子:求1~100之间,除了能被7整除之外的整数和
var sum = 0;
for (var i = 1; i <= 100; i++) {
if (i % 7 == 0) {
continue;
}
sum += i;
} //立即跳出本次循环,执行下一次的循环。
console.log(sum)
break关键字:可以跳出整个循环
js中的命名规范以及语法格式:
标识符命名规范:函数的命名必须要有意义,变量名称一般用名词,函数的名词一般用动词。