运算符
赋值—— = += -= *= /=
将等号右边的值赋予给左边, 要求左边必须是一个容器
// 赋值运算符
let num = 4
num += 5
console.log(num)
一元——正负号
// 一元运算符
let i = 1
// i++
++i
console.log(i)
自增、自减(让变量+1或-1,常用于计数)
比较 > < >= <= == ===(类型和值均相等) !=
// 比较运算符
console.log(3 >= 5)
console.log(3 >= 3)
console.log(2 == '2')//true
console.log(2 === '2')//false
console.log('a' < 'b')//true
console.log('aa' < 'ab')
- 比较运算符含有隐式转换(如果是数字和"其他值"的比较 则其他值会自动转换成数字去比较)
- 字符串比较使用ASCII值
- 涉及到"NAN"都是false (NaN)
- 更推荐===
逻辑——与 或 非
// 逻辑运算符(num=9)
console.log(num > 3 && num < 10)
console.log(num > 3 && num < 7)
console.log(num > 3 || num < 7)
//案例:判断4的倍数,且不是100的倍数
let num1 = +prompt('请输入数字:')
alert(num1 % 4 === 0 && num1 % 100 !== 0)
优先级
由高到低:
- ( )
- ++、 -- 、! —
- 先乘除后加减
- 大于小于号(大于等于、小于等于)
- 等号和不等号(==)
- 先&&后||
- 赋值(=)
- 逗号
表达式
可以被求值的代码,js会将其计算出一个结果
语句
js 整句或命令,js 语句是以分号结束(可以省略)
- 语句分类:顺序、分支、循环
if条件语句
单分支
// 单分支
if (true) {
console.log('执行语句')
}
// 数字0为假
if (0) {
console.log('执行语句')
}
// string空为假
if ('') {
console.log('执行语句')
}
if ('zhu') {
console.log('执行语句')
}
if (3) {
console.log('执行语句')
}
除了‘0’和字符串为空,所有的数字和字符串均为真
// 单分支案例
let core = +prompt('请输入高考成绩:')
if (core > 700) {
console.log('恭喜考入西安邮电大学')
alert('恭喜考入西安邮电大学')
}
双分支
// 双分支
let userName = prompt('请输入用户名:')
let password = +prompt('请输入密码:')
if (userName === 'zhu' && password === 123456) {
alert('登陆成功')
} else {
alert('登陆失败')
}
// 闰年判断
let year = +prompt('请输入年份:')
if (year % 4 === 0 && year % 100 !== 0 || year % 400 === 0) {
console.log('闰年')
console.log(`${year}是闰年`)
} else {
console.log('平年')
}
多分支
// 多分枝
let score = +prompt('请输入成绩:')
if (score >= 90) {
console.log(`${score}成绩优秀`)
} else if (score >= 70) {
console.log(`${score}成绩良好`)
} else if (score >= 60) {
console.log(`${score}成绩及格`)
} else {
console.log(`${score}成绩不及格`)
}
三元运算符
条件 ?满足条件的代码:不满足条件的代码
/* // 三元运算符
3 < 5 ? alert('真') : alert('假')
let sum = 3 < 5 ? 3 : 5
console.log(sum); */
/* // 输出最大的数
let num1 = +prompt('请输入第一个数字:')
let num2 = +prompt('请输入第二个数字:')
console.log(num1 > num2 ? num1 : num2) */
// 数字补0案例
let num = +prompt('请输入数字:')
// console.log(num < 10 ? `0${num}` : num)
num = num < 10 ? '0' + num : num
console.log(num);
一般用于取值
switch
// switch语句
let num = +prompt('请输入对应的编号:')
switch (num) {
case 1:
console.log('你的选择是1')
break;
case 3:
console.log('你的选择是3')
break;
default:
console.log('没有符合选择的')
break;
}
注意格式
// switch简单案例
let num1 = +prompt('数字一为:')
let num2 = +prompt('数字二为:')
let num_ = prompt('算术运算符为:')
switch (num_) {
case '+':
console.log(num1 + num2)
break
case '-':
console.log(`${num1}和${num2}差值为${num1 - num2}`)
break
case '*':
console.log(num1 * num2)
break
case '/':
console.log(num1 / num2)
break
default:
console.log('不符合规范,请重新输入')
break
}
while循环语句
满足条件期间,一直执行某代码
三要素:变量起始值、终止条件、变量变化量(自增)
// while 循环
/* let i = 1
while (i <= 5) {
console.log('while循环')
document.write('循环 <br>')
i++
}
let j = 1
while (j <= 10) {
document.write('月薪国王 <br> ')
j++
} */
// while 练习
let i = 1
let sum = 0
while (i <= 100) {
document.write(i + '<br>')
if (i % 2 !== 0)
sum += i
i++
}
document.write(sum)
continue和break
// continue 和 break
let i = 1
while (i <= 5) {
if (i === 3) {
i++
continue
// break
}
document.write(`wy吃了${i}个包子 <br>`)
i++
}
ATM
let money = 100
while (true) {
let i = +prompt(`请选择:
1.存钱
2.取钱
3.查看余额
4.退出`)
// 4:退出
if (i === 4) {
break
}
switch (i) {
case 1:
let cun = +prompt('请输入存款金额')
money += cun
break;
case 2:
let qu = +prompt('请输入取款金额')
if (qu <= money) {
alert(`成功取款${qu}元`)
money -= qu
} else {
alert('超出范围')
}
break
case 3:
alert(`您所查询的余额为${money}元`)
break
default:
break;
}
}
标签:控制,console,log,流程,break,num,let,prompt
From: https://www.cnblogs.com/Z2201210269/p/17823422.html