JavaScript基础
文章目录
JavaScript基础
一- 运算符(操作符)
2- 递增和递减运算符
3.赋值运算符
4. 比较运算符
5.逻辑运算符
6.运算符优先级
二 - 流程控制
1.三元表达式
2. switch分支流程控制
if 和 switch 区别
课后练习题加强
一- 运算符(操作符)
2- 递增和递减运算符
-
递增和递减运算符概述
如果需要反复给数字变量添加或减去1,可以使用递增(++)和递减( – 运算符来完成。
在 JavaScript 中,递增(++)和递减( -- )既可以放在变量前面,也可以放在变量后面。放在变量前面时,我们可以称为前置递增(递减)运算符,放在变量后面时,我们可以称为后置递增(递减)运算符。 注意:递增和递减运算符必须和变量配合使用。
-
递增运算符
- 前置递增运算符
- ++num 前置递增,就是自加1,类似于 num = num + 1,但是 ++num 写起来更简单。
使用口诀:先自加,后返回值
后置递增运算符
num++ 后置递增,就是自加1,类似于 num = num + 1 ,但是 num++ 写起来更简单。
==使用口诀:先返回原值,后自加。 ==
3.赋值运算符
4. 比较运算符
5.逻辑运算符
6.运算符优先级
二 - 流程控制
JS 语言提供了两种分支结构语句:if 语句、switch 语句
1.if 语句
- 语法结构
// 条件成立执行代码,否则什么也不做
if (条件表达式) {
// 条件成立执行的代码语句
}
2.if else语句(双分支语句)
- 语法结构
// 条件成立 执行 if 里面代码,否则执行else 里面的代码
if (条件表达式) {
// [如果] 条件成立执行的代码
} else {
// [否则] 执行的代码
}
3.if else if 语句(多分支语句)
- 语法结构
// 适合于检查多重条件。
if (条件表达式1) {
语句1;
} else if (条件表达式2) {
语句2;
} else if (条件表达式3) {
语句3;
....
} else {
// 上述条件都不成立执行此处代码
}
1.三元表达式
- 语法结构
表达式1 ? 表达式2 : 表达式3;
- 如果表达式1为 true ,则返回表达式2的值,如果表达式1为 false,则返回表达式3的值
- 简单理解: 就类似于 if else (双分支) 的简写
2. switch分支流程控制
-
语法结构
switch 语句也是多分支语句,它用于基于不同的条件来执行不同的代码。当要针对变量设置一系列的特定值的选项时,就可以使用 switch。
switch( 表达式 ){
case value1:
// 表达式 等于 value1 时要执行的代码
break;
case value2:
// 表达式 等于 value2 时要执行的代码
break;
default:
// 表达式 不等于任何一个 value 时要执行的代码
}
-
switch :开关 转换 , case :小例子 选项
-
关键字 switch 后面括号内可以是表达式或值, 通常是一个变量
-
关键字 case , 后跟一个选项的表达式或值,后面跟一个冒号
-
switch 表达式的值会与结构中的 case 的值做比较
-
如果存在匹配全等(===) ,则与该 case 关联的代码块会被执行,并在遇到 break 时停止,整个 switch 语句代码执行结束
-
如果所有的 case 的值都和表达式的值不匹配,则执行 default 里的代码
注: 执行case 里面的语句时,如果没有break,则继续执行下一个case里面
if 和 switch 区别
- 一般情况下,它们两个语句可以相互替换
- switch…case 语句通常处理 case为比较确定值的情况, 而 if…else…语句更加灵活,常用于范围判断(大于、等于某个范围)
- switch 语句进行条件判断后直接执行到程序的条件语句,效率更高。而if…else 语句有几种条件,就得判断多少次。
- 当分支比较少时,if… else语句的执行效率比 switch语句高。
- 当分支比较多时,switch语句的执行效率比较高,而且结构更清晰。
课后给了些练习题,有兴趣也可以看看吧
课后练习题加强
1- 判断时间阶段。
-
题目描述:
用户输入几点弹出问候信息;
如用户输入12点中午好; 用户输入18点 弹出傍晚好;
用户输入23点弹出深夜好;
-
题目提示:
通过比较运算符判定输入的时间的范围,弹出相应的问候信息
var time = prompt('请输入时间:');
switch (time) {
case '12':
alert('中午好');
break;
case '18':
alert('傍晚好');
break;
case '23':
alert('深夜好');
break;
}
2 - 比较两个数的最大值
-
题目描述:
用户依次输入2个值,最后弹出最大的那个值
-
题目提示:
通过比较运算符弹出最大值
var num = prompt('请输入一个数字');
var num1 = prompt('请输入另一个数字');
if (num > num1) {
alert(num);
} else {
alert(num1);
}
3 - 判断奇偶性
-
题目描述:
用户输入一个数,判断是奇数还是偶数
-
题目提示:
通过%运算符可以得出数字的奇偶性
var num = prompt('请输入一个数:');
if (num % 2 == 0) {
alert('这是一个偶数');
} else {
alert('这是一个奇数')
}
4 - 判断星期
-
题目描述:
提示用户输入本1-7的数字,返回用户输入的那一天是星期几
var week = prompt('请输入数字1-7:');
switch (week) {
case '1':
alert('星期一');
break;
case '2':
alert('星期二');
break;
case '3':
alert('星期三');
break;
case '4':
alert('星期四');
break;
case '5':
alert('星期五');
break;
case '6':
alert('星期六');
break;
case '7':
alert('星期日');
break;
default:
alert('输入有误');
break;
}
5 - 请客吃饭
-
题目描述:
接收班长口袋里的钱数?
若大于等于2000,请大家吃西餐。
若小于2000,大于等于1500,请大家吃快餐。
若小于1500,大于等于1000,请大家喝饮料。
若小于1000,大于等于500,请大家吃棒棒糖。
否则提醒班长下次把钱带够
-
题目提示:
使用switch或者if else if 来进行逻辑书写
var money = prompt('请输入你有多少钱:');
if (money >= 2000) {
alert('请大家吃饭');
} else if (money >= 1500) {
alert('请大家吃快餐');
} else if (money >= 1000) {
alert('请大家喝饮料');
} else if (money >= 500 && money < 1000) {
alert('请大家吃棒棒糖');
} else {
alert('下次把钱带够阿');
}
分享结束,整理不易,转载请附上链接
jsDay3(笔记整理)传送门