当前位置:首页 > JavaScript

atm机实现明细js

2026-03-01 16:52:40JavaScript

ATM 机实现明细的 JavaScript 示例

以下是一个模拟 ATM 机功能的 JavaScript 实现,包含查询交易明细、存款、取款等基本功能。

atm机实现明细js

初始化账户数据

const account = {
  name: "张三",
  accountNumber: "1234567890",
  balance: 5000,
  transactions: [
    { type: "deposit", amount: 2000, date: "2023-01-01", balance: 5000 },
    { type: "withdraw", amount: 1000, date: "2023-01-02", balance: 4000 },
    { type: "deposit", amount: 2000, date: "2023-01-03", balance: 6000 }
  ]
};

查询余额功能

function checkBalance() {
  return `当前余额: ${account.balance}元`;
}

存款功能

function deposit(amount) {
  if (amount <= 0) {
    return "存款金额必须大于0";
  }

  account.balance += amount;
  const transaction = {
    type: "deposit",
    amount: amount,
    date: new Date().toISOString().split('T')[0],
    balance: account.balance
  };

  account.transactions.push(transaction);
  return `存款成功,当前余额: ${account.balance}元`;
}

取款功能

function withdraw(amount) {
  if (amount <= 0) {
    return "取款金额必须大于0";
  }

  if (amount > account.balance) {
    return "余额不足";
  }

  account.balance -= amount;
  const transaction = {
    type: "withdraw",
    amount: amount,
    date: new Date().toISOString().split('T')[0],
    balance: account.balance
  };

  account.transactions.push(transaction);
  return `取款成功,当前余额: ${account.balance}元`;
}

查询交易明细功能

function getTransactionHistory() {
  let history = "交易明细:\n";
  account.transactions.forEach(trans => {
    history += `${trans.date} ${trans.type === 'deposit' ? '存款' : '取款'}: ${trans.amount}元 余额: ${trans.balance}元\n`;
  });
  return history;
}

使用示例

console.log(checkBalance());
console.log(deposit(1000));
console.log(withdraw(500));
console.log(getTransactionHistory());

前端界面整合示例

<!DOCTYPE html>
<html>
<head>
  <title>ATM模拟器</title>
  <style>
    body { font-family: Arial, sans-serif; margin: 20px; }
    .atm-container { max-width: 500px; margin: 0 auto; }
    button { margin: 5px; padding: 8px 15px; }
    #output { margin-top: 20px; white-space: pre-line; border: 1px solid #ddd; padding: 10px; min-height: 100px; }
  </style>
</head>
<body>
  <div class="atm-container">
    <h2>ATM模拟器</h2>
    <button onclick="output(checkBalance())">查询余额</button>
    <button onclick="output(deposit(prompt('请输入存款金额:')))">存款</button>
    <button onclick="output(withdraw(prompt('请输入取款金额:')))">取款</button>
    <button onclick="output(getTransactionHistory())">交易明细</button>
    <div id="output"></div>
  </div>

  <script>
    // 这里插入上面的JavaScript代码
    function output(text) {
      document.getElementById('output').textContent = text;
    }
  </script>
</body>
</html>

安全考虑

在实际应用中,需要考虑以下安全措施:

  • 使用HTTPS协议保护数据传输
  • 实现用户身份验证机制
  • 对敏感数据进行加密
  • 防止CSRF和XSS攻击
  • 记录详细的操作日志

扩展功能

可以进一步扩展的功能包括:

  • 转账功能
  • 密码修改
  • 交易分类统计
  • 定期存款功能
  • 多账户管理

这个示例提供了ATM机的基本功能实现,可以根据实际需求进行扩展和完善。

atm机实现明细js

标签: 明细atm
分享给朋友:

相关文章

vue实现atm

vue实现atm

Vue实现ATM机功能 ATM机功能通常包括登录、查询余额、存款、取款、转账等操作。以下是一个基于Vue的实现方案,涵盖核心功能和代码示例。 数据模型设计 ATM机需要管理用户账户信息,可以用一个…

vue实现atm

vue实现atm

Vue 实现 ATM 机功能 使用 Vue 实现一个简单的 ATM 机功能,可以模拟存款、取款、查询余额等操作。以下是实现步骤: 创建 Vue 项目 使用 Vue CLI 创建一个新项目:…