需求
- 初始化的存款是100
- 然后输入数值选择你需要对的功能
- 进入相对应的功能可以选择放回上一层的页面
- 但你输入不是任务指令的数字可以识别错误,要求重新输入
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script>
//用户默认金额存款为100元
var num=parseInt(prompt('请输入您要得到操作:'+'\n'+'1.存钱'+'\n'+'2.取钱'+'\n'+'3.显示余额'+'\n'+'4.退出'+'\n'));//输入功能的页面 parseInt转换从prompt中获取的数据,因为prompt默认获取的是字符型的
var resust;//定义全局变量,在下方需要用到
var money=100;
var draw;
switch (num) {
case 1:
resust = parseInt(prompt('请输入您要存的钱'))//parseInt转换从prompt中获取的数据,因为prompt默认获取的是字符型的
if (resust <= 0) {
alert('请您重新输入正确的存款金额')
resust = parseInt(prompt('请输入您要存的钱'))
} else {//防止用户不输入,或者用户输入负金额
alert('请您重新输入正确的存款金额')
resust = parseInt(prompt('请输入您要存的钱'))
}
money = money + resust;
alert('正在为您存款,请稍等')
alert('您的目前余额为' + money + '元')
break;
case 2:
draw = parseInt(prompt('请输入您要取的钱'))
if (draw > 100) {//防止用户取的钱超过本来用户的本来的金额
alert("您的账户余额不足,请您输入正确的取款金额")
draw = parseInt(prompt('请输入您要取的钱'))
}
draw = money - draw;
alert('正在为您取款,请稍等')
alert('您的目前余额为' + draw + '元')
break;
case 3:
alert('您的余额为' + money + '元')
let resust1 = parseInt(prompt('您是否还需其他的操作' + '\n' + '1.返回上一层系统页面' + '\n' + '2.退出ATM取款系统' + '\n'))
if (resust1 == 1) {//检测到输入1的功能界面实现跳嵌套的首页面,实现手页面
num = parseInt(prompt('请输入您要得到操作:' + '\n' + '1.存钱' + '\n' + '2.取钱' + '\n' + '3.显示余额' + '\n' + '4.退出' + '\n'));
switch (num) {
case 1:
resust = parseInt(prompt('请输入您要存的钱'))
money = money + resust;
alert('您的目前余额为' + money + '元')
break;
case 2:
draw = parseInt(prompt('请输入您要取的钱'))
draw = money - draw;
alert('您的目前余额为' + draw + '元')
break;
case 3:
alert('您的余额为' + money + '元')
break;
case 4:
alert('请您等待正在退出ATM系统')
break;
default:
alert('请您查证后在输入')
}
} else
alert('正在为您退出系统')//输入2即可退出系统
break;
case 4:
alert('请您等待正在退出ATM系统')
break;
default:
alert('请您查证后在输入')//假如输入1-4的非法数字跳转输入非法数字
num = parseInt(prompt('请输入您要得到操作:' + '\n' + '1.存钱' + '\n' + '2.取钱' + '\n' + '3.显示余额' + '\n' + '4.退出' + '\n'));
switch (num) {
case 1:
resust = parseInt(prompt('请输入您要存的钱'))//parseInt转换从prompt中获取的数据,因为prompt默认获取的是字符型的
if (resust <= 0) {
alert('请您重新输入正确的存款金额')
resust = parseInt(prompt('请输入您要存的钱'))
} else {//防止用户不输入,或者用户输入负金额
alert('请您重新输入正确的存款金额')
resust = parseInt(prompt('请输入您要存的钱'))
}
money = money + resust;
alert('正在为您存款,请稍等')
alert('您的目前余额为' + money + '元')
break;
case 2:
draw = parseInt(prompt('请输入您要取的钱'))
if (draw > 100) {//防止用户取的钱超过本来用户的本来的金额
alert("您的账户余额不足,请您输入正确的取款金额")
draw = parseInt(prompt('请输入您要取的钱'))
}
draw = money - draw;
alert('正在为您取款,请稍等')
alert('您的目前余额为' + draw + '元')
break;
case 3:
alert('您的余额为' + money + '元')
let resust1 = parseInt(prompt('您是否还需其他的操作' + '\n' + '1.返回上一层系统页面' + '\n' + '2.退出ATM取款系统' + '\n'))
if (resust1 == 1) {//检测到输入1的功能界面实现跳嵌套的首页面,实现手页面
num = parseInt(prompt('请输入您要得到操作:' + '\n' + '1.存钱' + '\n' + '2.取钱' + '\n' + '3.显示余额' + '\n' + '4.退出' + '\n'));
switch (num) {
case 1:
resust = parseInt(prompt('请输入您要存的钱'))
money = money + resust;
alert('您的目前余额为' + money + '元')
break;
case 2:
draw = parseInt(prompt('请输入您要取的钱'))
draw = money - draw;
alert('您的目前余额为' + draw + '元')
break;
case 3:
alert('您的余额为' + money + '元')
break;
case 4:
alert('请您等待正在退出ATM系统')
break;
default:
alert('请您查证后在输入')
}
} else
alert('正在为您退出系统')//输入2即可退出系统
break;
case 4:
alert('请您等待正在退出ATM系统')
break;
default:
}
}