我的代碼的思路是
第一步 輸入用戶名和密碼 進入ATM機操作系統 代碼如下:
var UserName ='',PassWord = ''; var UserName = prompt('請輸入用戶名'); var PassWord = prompt('請輸入密 碼'); while (UserName !== 'admin' || PassWord !== 'admin'){ UserName = prompt('請輸入用戶名'); PassWord = prompt('請輸入密 碼'); } alert('登陸成功,歡迎您進入ATM機系統!');
第二步 請選擇業務 1 存款-2 取款-3 查詢余額-4 退出系統 定義變量 現有余額變量為money 存取錢變量為balance 選擇序號變量為num 代碼如下:
var money = 100; // money為現有余額 var balance = 0; // balance為存取錢的變量 var num = prompt('選擇您的業務: \n 1. 存款 \n 2. 取款 \n 3. 余額查詢 \n 4. 退出系統');
第三步 進入步驟 我這里用的是swich case 匹配對應的序號選擇 代碼如下: 要注意的是 prompt取過來的值是字符串類型的 所以需要轉換一下 轉成數值型變量 parseInt
每一個case后面需要重復加這句代碼 這樣才會連貫整個程序 不然會有bug 當然你們可以考慮用循環來做這個
num = prompt('選擇您的業務: \n 1. 存款 \n 2. 取款 \n 3. 余額查詢 \n 4. 退出系統');
switch (Number(num)){ case 1: var balance = prompt('請輸入存款金額:'); money = parseInt(balance) + parseInt(money); console.log(money); alert('存款成功,您目前的余額為'+ money +'元'); num = prompt('選擇您的業務: \n 1. 存款 \n 2. 取款 \n 3. 余額查詢 \n 4. 退出系統'); case 2: balance = prompt('請輸入取款金額:'); if (parseInt(balance) > money){ alert('您的余額不足,請重新輸入'); }else { money = parseInt(money) - parseInt(balance); } alert('取款成功,您目前的余額為'+ money +'元'); num = prompt('選擇您的業務: \n 1. 存款 \n 2. 取款 \n 3. 余額查詢 \n 4. 退出系統'); case 3: alert('您的余額為'+ money +'元'); num = prompt('選擇您的業務: \n 1. 存款 \n 2. 取款 \n 3. 余額查詢 \n 4. 退出系統'); case 4: alert('即將退出系統,請取回您的銀行卡!'); break; default: alert('您輸入的序號有誤,請重新輸入'); num = prompt('選擇您的業務: \n 1. 存款 \n 2. 取款 \n 3. 余額查詢 \n 4. 退出系統'); }