算数运算符
先乘除后加减,有括号先算括号
余数运算符
<script>
let num1 = 2,
num2 = 3;
console.log(num1 + num2);
console.log(num1 * num2);
console.log(num1 / num2);
// 余数运算符
console.log(10 % 2);
console.log(10 % 3);
// 先乘除后加减,有括号先算括号
console.log(2 + 2 * 4);
console.log((2 + 2) * 4);
</script>
圆的面积运算
Math.PI 表示π
<script>
let r = prompt('请输入圆的半径')
console.log('圆的面积为:' + Math.PI * r * r);
</script>
输出结果:
赋值运算符
它的出现只是为了简化代码
比如可以把 num += 2;理解为num = num + 2;
加减乘除以及除余
<script>
let num = 10;
// num += 2;
// num -= 2;
// num *= 2;
// num /= 2;
// num %= 2;
console.log(num);
</script>
一元运算符
自增自减单行使用没有区别
自增
前置自增
先自加后使用
<script>
let num = 1;
console.log(++num + 2);
</script>
结果为:
后置自增
先使用再自加
可以理解为先直接执行num + 2不是num先自增再+2
如果我们再去输出num那么它的结果则是为2
<script>
let num = 1;
console.log(num++ + 2);
console.log(num);
</script>
结果为:
自减
搞懂前置后置自增后,自减不是有手就行?
<script>
let num = 10;
console.log(--num);
console.log(num--);
</script>
结果:
再一次输出num
那么结果就是为8
<script>
let num = 10;
console.log(--num);
console.log(num--);
console.log(num);
</script>
比较运算符
结果返回true或false
<script>
console.log(10 > 2);
console.log(2 > 3);
console.log(2 < 10);
console.log(10 < 2);
console.log(20 <= 30);
console.log(20 >= 30);
// 只判断值,不判断类型
console.log(20 == 20);
console.log(20 == 90);
// 不等于
console.log(20 != 99);
console.log(20 != 20);
// 比较类型 数值
console.log(20 === 20);
console.log(20 === '20');
</script>
结果:
逻辑运算符
与或非 && || !
与 &&
需满足所有条件
<script>
let num = 6;
console.log(num > 5 && num < 10);
</script>
结果:
或 ||
只需满足其中一个条件
<script>
let num = 6;
console.log(num === 3 || num === 6);
</script>
结果:
非 !
取反
<script>
let num = true;
console.log(!num);
</script>
结果:
短路运算
与 左边判断为false即短路
或 左边判断为true即短路
与 &&
只有左边条件通过才会去执行右边的代码
则true改为false那么今晚就去不成马杀鸡了!
代码演示:
<script>
let num = true;
num && console.log('今晚马杀鸡');
</script>
结果:
或 ||
如果左边条件通过,那么右边的代码就不会去执行
则false改为true,那今晚的马杀鸡就不存在啦!
代码演示:
<script>
let num = false;
num || console.log('今晚马杀鸡');
</script>
结果:
运算符优先级
if语句
if分支语句
单分支
代码:
<script>
let score = +prompt('请输入你的分数')
if (score > 700) {
alert('恭喜您已经被录取')
}
</script>
效果:
双分支
代码:
<script>
let score = +prompt('请输入你的分数')
if (score > 700) {
alert('恭喜您已经被录取')
}
else {
alert('跟我一起搬砖吧')
}
</script>
效果:
多分支
代码:
<script>
let day = +prompt('请输入今天星期几')
if (day === 1) {
console.log('今天吃软饭');
} else if (day === 2) {
console.log('今天吃隆江猪脚饭');
} else if (day === 3) {
console.log('今天没得吃');
} else if (day === 4) {
console.log('今天吃白饭');
} else if (day === 5) {
console.log('今天吃喷射套餐');
} else {
console.log('今天吃牢饭');
}
</script>
效果:
三元表达式
演示简单的取值
代码:
<script>
let num1 = +prompt('请输入第一个数值'),
num2 = +prompt('请输入第二个数值');
let num3 = num1 > num2 ? num1 : num2;
console.log(num3);
</script>
效果:
小案例
简易的加减乘除计算器
利用if多分支
<script>
let num1 = +prompt('请输入第一个数值'),
num2 = +prompt('请输入第二个数值'),
num3 = prompt('请输入加减乘除');
if (num3 === '+') {
console.log(num1 + num2);
} else if (num3 === '-') {
console.log(num1 - num2);
} else if (num3 === '/') {
console.log(num1 / num2);
} else if (num3 === '*') {
console.log(num1 * num2);
} else {
alert('你输入的加减乘除有误')
}
</script>、
小于10在前面加上0
<script>
let num = +prompt('请输入一个数值')
// 三元运算符
num < 10 ? console.log('0' + num) : console.log(num);
// if分支
if (num < 10) {
console.log('0' + num);
}
else {
console.log(num);
}
</script>