目录
一、运算符
1.1 算数运算符
1.2 赋值运算符
1.3 比较运算符
1.4 自增自减运算符(一元运算符)
1.5 逻辑运算符
二、分支结构 if
2.1 if 语句 判断一种情况
2.2 if else 判断两种情况
2.3 if elseif else 判断多种情况
三、分支结构 switch case
四、强化练习
--运算符就是在代码里进行运算时使用的符号,不光是数学运算,在js里也有很多的运算方式
1、+
-只有两边都是数字的情况下才会计算
-只要有+任意一边是字符串类型,就会进行字符串拼接!!
var a = 10;
var b = 9;
console.log(a+b);//19
2、 -
- 会执行减法运算
- 会自动的把减号两边转成数字在进行运算!!
var a = "10";
var b = "9";
// console.log(a+b);
console.log(a-b);//1
3、*
- 会执行乘法运算
- 会自动的把乘号两边转成数字在进行运算!!
var a = 10;
var b = 9;
console.log(a*b);//90
4、/
- 会执行除法运算
- 会自动的把除号两边转成数字在进行运算!!
var a = 10;
var b = 9;
console.log(a/b);//1.1111111111111112
5、% 取余
console.log(2%2); //0
console.log(9%2); //1
console.log(10%5); //0
6、** 幂运算
console.log(2**3); // 8
console.log(1**100); //1
1、 =
// js 的赋值就是把右侧的值赋值给左侧
// 把10 赋值给 a
// 那么a的值就是10
var a = 10;
var b = 9;
var c = a+b;
2、+=
// +=
var a = 10;
// a = a+1; 等于 a+=1
// a+=10 等于 a = a+10
console.log(a); //20
3、-=
// -=
// b = b-1;
var b = 9;
b-=3; //b=b-3
console.log(b); //6
4、*=
var c = 2;
c *=3 // c = c*3;
console.log(c);//6
5、/=
var d = 10;
d/=3;
console.log(d);//3.3333333333333335
6、%=
var e = 9;
e%=2 //e=e%2
console.log(e);//1
tips:比较运算符的返回值都是布尔值,,要么是true 要么是false
1、==
- 比较符号两边的值是否相等,不管数据类型
1==1 true
1=='1' true
2、=== 恒等 全等
- 比较符号两边的值是否相等,区分数据类型
1===1 true
1==="1" false
3、!=
- 判断符号两边是否不等,不判断数据类型
1!='1' false
1!=='1' true
4、!==
- 判断符号两边是否不等,判断数据类型
1!='1' false
1!=='1' true
10-9!=9-8 false
5、>=
- 比较符号左边的值是否大于等于右边
1>=1 true
1>=0 true
1>=2 false
6、<=
比较符号左边的值是否小于等于右边
1<=2 true
1<=1 true
1<=0 false
7、>
比较符号左边的值是否大于右边
1>2 false
1>1 false
1>0 true
8、<
比较符号左边的值是否小于右边
1<1 false
1<2 true
1<0 false
1、++
自增运算
分成两种 前置自增 后置自增
// 前置++, 会先增加1 在返回
var a = 10;
console.log(++a,a); //11 11
// 后置++ 会先返回值 在增加1
var b = 10;
console.log(b++,b);//10 11
var n = 4;
var r = ++n;
// n=5 r=5
console.log(n,r);
2、--
// 进行自减运算
// 前置-- 后置-- 和++的道理一样
var x = 10;
var y = x--;
console.log(x,y);
练习
var k =1;
console.log(k++ + ++k + k + k++)
1、&& //等同
and 并且
// 符号左边必须是true 并且 右边 也是true 返回true
// 只要有一边不是true,那就返回false
// 结论:同真则真 一假则假
// true && true true
// true && false false
// false && true false
// false && false false
var age = 20;
//var res = age>=18&&age<30; //true
var res = age>=30&&age<40; //false
console.log(res);
2、||
或
// ||
// 符号两边有任何一边是true 那么结果就是true
// 只有两边都是false时 结果才是false
// 总结 一真则真,同假则假
// true || true true
// true || false true
// false || true true
// false || false false
var age1 = 18;
var res1 = age1>=18||age<50; // true
var res2 = age1>20 || age1 <10;// false
console.log(res2);
3、!
进行取反运算 !flag
本身是true 会变成false
本身是false 会变成true
var flag = true;
var res = !flag;
console.log(res) //false
var abc = 100;//true
console.log(!abc);//false
if 用于判断 某个范围
tips:
在js中 程序有三大结构
顺序结构 ====》 代码自上向下执行 (天然默认)
分支结构 ====》 给一个条件,这个条件满足了才会执行
循环结构 ====》给一个条件 ,循环执行一段代码
通过if 语句 来决定代码是否执行
语法:
if(条件){
条件为真才执行的代码
}
// 电视剧1-50集
var age = 16;
if(age>=18){
console.log("你可以观看1-50集");
}
两个分支 一定有一个会执行
语法
if(条件){
条件为真执行的代码
}else{
条件为假的时候执行的代码
}
var age = 10;
if(age>=18){
console.log("你可以观看0-50集");
}else{
console.log("年龄太小啦,去看喜羊羊吧");
}
多个分支 会执行一个符合条件的分支
如果有一个条件为true 后边就不在判断了
语法:
if(条件1){
条件1为真执行的代码
}else if(条件2){
条件2为真执行的代码
}else if(条件3){
条件3为真执行的代码
}else{
前边的条件都不满足,就走else
}
// 10-12岁 观看 0-10集
// 13-16岁 观看 0-20集
// 17-18岁 观看 0-30集
// >18岁 观看所有
// <10岁 去看喜羊羊
// 注意 在js里不要写 10=10&&age<=12){
console.log("观看 0-10集");
}else if(age>=13&&age<=16){
console.log("观看 0-20集");
}else if(age>=17&&age<=18){
console.log("观看 0-30集");
}else if(age>18){
console.log("观看所有");
}else{
console.log("去看喜羊羊");
}
也是条件判断的一种
是对某个固定值的判断!!
语法:
switch(判断的变量){
case 情况1:
符合情况1执行的代码;
break;
case 情况2:
符合情况2执行的代码
break;
case 情况3:
符合情况3执行的代码
break;
// ....
default:
上边的情况都不满足时执行的代码;
}
switch 开关
case 情况
break 结束 中断 结束当前的执行
default 默认
例子
根据一个变量给出的数字 显示是星期几
var week = -6;
switch (week) {
case 1:
console.log("今天星期一");
break;
case 2:
console.log("今天星期2");
break;
case 3:
console.log("今天星期3");
break;
case 4:
console.log("今天星期4");
break;
case 5:
console.log("今天星期5");
break;
case 6:
console.log("今天星期6");
break;
case 7:
console.log("今天星期7");
break;
default:
console.log("你搞错了把");
break;
}
// 1 3 5 7 8 10 12 31天永不差 其他情况不是31天的
// 当多个case 的值 有相同的处理结果时 break 可以省略!!
var month = 5;
switch (month) {
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
console.log("31天永不差");
break;
default:
console.log("不是31天");
break;
}
1、判断一个整数、属于哪个范围,大于0 小于0 等于
// 判断一个整数、属于哪个范围,大于0 小于0 等于0
var num = 9;
if(num>0){
console.log("当前值是大于0");
}else if(num<0){
console.log("当前值小于0");
}else{
console.log("当前值等于0");
}
2、判断一个整数是偶数还是奇数,并打印出是偶数、或者 是奇数
// 判断一个整数是偶数还是奇数,并打印出是偶数、或者 是奇数
// 偶数 2 4 6 8 10 ....
// 奇数 1 3 5 7 9....
var num = 8;
// 注意:在判断时候 等号的问题
// = 是赋值
// == 或者 === 比较 判断
if(num%2 === 0){
console.log("偶数");
}else{
console.log("奇数");
}
3、开发一款软件,根据公式(用户的身高 - 108)* 2 = 标准体重,可以有10斤左右的浮动,来观察测试者的体重是否合适 (提前提供好 身高 体重)
var weight = 140;
var height = 175;
4、输入一个分数,判断成绩的等级
90以上 优秀 70 以上良好 60以上及格 60以下 不及格
5、随便给出一个数字代码取出 个位数、十位、百位、千位的数
var num = 3699; 个位是9 十位是9 百位是6 千位是3