JavaScript小项目-ATM存取款机

JavaScript代码如下:
1、用户名称及密码(已注册的)

var users = [['admin','a123',1000],['deng','d123',2000],['zhang','z123',1000]]

2、主界面功能

 function welcome(){alert('欢迎使用ATM存取款一体机')while(true){var option =  prompt('1.登录  2.注册  3.退出')switch(option){case '1':var loginUser = login()if(loginUser){main(loginUser)}else{return}break;case '2':register()break;case '3':return; //跳出整个函数的执行default:alert('输入有误,请重新输入')break;}}}
function main(loginUser){while(true){var option =  prompt(`${loginUser[0]}请选择:1.查询余额  2.存钱  3.取款  4.转账  5.切换用户  6.退出`)switch(option){case '1':searchMoney(loginUser)break;case '2':saveMoney(loginUser)break;case '3':getMoney(loginUser)break;case '4':exchangeMoney(loginUser)break;case '5':return;// break;case '6':return;// break;default:alert('输入有误,请重新输入')break;}}

3、登录及注册功能

 function login(){var chance = 3while(true){var user = prompt('请输入用户名')var pass = prompt('请输入密码')// var loginUser = users.find(function(item){//     return user == item[0] && pass == item[1]// })//箭头函数实现var loginUser = users.find(item => user == item[0] && pass == item[1] )// console.log(loginUser)if(loginUser){chance = 3return loginUser //1.终止函数继续执行,把登录用户返回出去}else{chance--if(!chance){alert('卡已被锁定')return}alert(`用户名、密码有误,还剩${chance}次机会,请重新输入`)}}}function register(){while(true){var user = prompt('请输入注册用户名')var isHave =  users.some(function(item){return user == item[0]})if(isHave){alert('用户名已存在,请重新输入')}else{//继续注册var pass = prompt('请输入注册密码')users.push([user,pass,0])console.log(users)return}}}

4、余额查询、存取功能代码

function searchMoney(loginUser){alert(`当前商户还剩${loginUser[2]}`)}function saveMoney(loginUser){// var temp = [...loginUser]var money = ~~prompt('请输入存多少钱')loginUser[2] += moneyalert(`用户已存入${money}元,当前余额为${loginUser[2]}元`)}function getMoney(loginUser){// var temp = [...loginUser]while(true){var money = ~~prompt('请输入取多少钱')if(money > loginUser[2]){alert('余额不足,请重新输入')}else{loginUser[2] -= moneyalert(`用户已取出${money}元,当前余额为${loginUser[2]}元`)return}}}function exchangeMoney(loginUser){while(true){var user = prompt('请输入转账账户')var oneData = users.find(function(item){return item[0] == user})if(oneData){while(true){var money = ~~prompt('请输入转账金额')if(loginUser[2]<money){alert('余额不足,跑路')}else{loginUser[2] -= money;oneData[2] += moneyalert(`成功转账${money}元,余额还剩${loginUser[2]}元`)return}}}alert('输入账户不存在,请重新输入')}}

欢迎评论区交流讨论。

JavaScript代码实现ATM自动存取款功能相关推荐

  1. java SWT Browser实现浏览器功能并运行JavaScript代码

    一.创建简单的浏览器 import org.eclipse.swt.*; import org.eclipse.swt.browser.*; import org.eclipse.swt.layout ...

  2. vim中实现javascript代码自动完成功能

    JavaScript是web脚本语言.另一方面Vim是许多编程人员的首选编辑器.Vim能公丰富,可以对JavaScript的语法进行自动完成.为了能够使用这个特性,你必须先要开启它. 在Vim的命令模 ...

  3. VS 2008的JavaScript代码提示功能 (学习老赵视频的笔记)

    学习老赵的视频ASP.NET AJAX深入浅出系列课程(19):VS 2008的JavaScript代码提示功能(Level 200) 自己做的demo,记下来以便查阅!感谢赵老师! 原来js还可以像 ...

  4. php在线拍照代码,Javascript+PHP实现在线拍照功能

    实现这个功能的前提是你的电脑设备上需要安装有摄像头设备,以及你的浏览器需要支持flash. HTML Javascript+PHP实现在线拍照功能 在body中加入一个用于调用摄像组件的容器id#ca ...

  5. atm c语言流程图_C语言 ATM自动存取款机全套代码

    #include&ltstdio.h&gt #include&ltstdlib.h&gt #include&ltstring.h&gt #include ...

  6. html桌面倒计时代码,超详细!使用HTML、CSS、JavaScript实现倒计时。附加功能——点击页面出现小心心...

    写在开头的感谢: 感谢 @Destiny_1853 的灵感和获取时间的代码提供. 感谢 @扰扰 的页面点击出现小心心的代码提供. 本次,我们准备写一个有关倒计时的小例子,正好最近在进行前端实训,学习了 ...

  7. 如何通过JavaScript代码实现页面的返回上一页功能的实现

    如何通过JavaScript代码实现页面的返回上一页功能的实现 作者:张国军_Suger 开发工具与关键技术:JavaScript 很多时候我们需要通过JavaScript代码实现页面的上一页功能,下 ...

  8. 斗兽棋 java_AnimalGame 一个简单的斗兽棋代码实现,基本功能 现了,支持人人对战 JavaScript 238万源代码下载- www.pudn.com...

    文件名称: AnimalGame下载 收藏√  [ 5  4  3  2  1 ] 开发工具: Java 文件大小: 2257 KB 上传时间: 2015-01-26 下载次数: 0 提 供 者: 盛 ...

  9. js正则替换html标签内容,JavaScript正则替换HTML标签功能的示例代码分享

    1.说明 获取HTML字符串(包含标签),通过正则表达式替换HTML标签,输出替换后的字符串 2.实现JavaScript代码 function deleteTag() {     var regx ...

最新文章

  1. oracle随机取数据
  2. H.264编码profile level控制
  3. 空间点过程(Point Processes)和随机测度(Random Measure)
  4. css知识笔记(二)——盒子模型
  5. 用SQL语句向表格中插入数据
  6. C++ 获取char*的长度
  7. oracle em界面监控出来的奇怪图像_监控工程常见的5大难题,项目中都会遇到
  8. 1.根据MAC地址抓包
  9. Firefox推荐安装插件
  10. Qt常用类——Qpoint
  11. LCD驱动程序详细讲解(三)
  12. 存在链接注入漏洞_【安全提示】CNVD发布上周关注度较高的产品安全漏洞(20200817-20200823)...
  13. Scala下载和安装
  14. heeds matlab,Ricardo IGNITE下载-整车性能仿真分析软件Ricardo IGNITE下载v2018.1 最新版-西西软件下载...
  15. 如何用原生js获取非行间样式
  16. pdf转图片怎么清晰?
  17. linux tar.xz 解压命令,Linux下.tar.xz文件的解压教程详解
  18. 应用层与HTTP协议
  19. Servlet本身的init,service,destory生命周期方法
  20. 3DMAX 渲染AO贴图流程

热门文章

  1. 实例变量与类变量的区别
  2. 10个帮你减压放松的网站
  3. 高薪行业2016年调薪预估率出炉
  4. Infinity Blade2 (无尽之刃2)通关
  5. 有情无情胜, 大家是不是谁谁谁的意外
  6. 垂死或涅槃重生 -- Delphi XE5 我们将宣布感情的回归
  7. MSP430 STM32 单片机 SG90 舵机
  8. SAS 时间区间函数 INTNX 和 INTCK
  9. 输入手机号码自动填充空格 变成3-4-4格式
  10. 英特尔十一代处理器各方面提升