Menu
CoddyTech

Пополнение и снятие средств

Часть раздела Объектно-ориентированное программирование путешествия по JavaScript на Coddy. Урок 22 из 56.

challenge icon

Задание

Далее мы добавим функциональность выполнения транзакций в класс BankAccount, реализовав методы deposit() и withdraw().

Твоя задача — добавить эти два новых метода в класс BankAccount:

1. Метод deposit(amount):

  • Проверяет, является ли amount положительным числом (больше 0)
  • Если значение допустимо:
    • Прибавляет сумму к балансу
    • Выводит в точности: Deposited $${amount}
  • Если значение недопустимо: Выводит в точности: Invalid deposit amount

2. Метод withdraw(amount):

  • Проверяет, является ли amount положительным числом И меньше ли он или равен текущему балансу
  • Если значение допустимо:
    • Вычитает сумму из баланса
    • Выводит в точности: Withdrew $${amount}
  • Если значение недопустимо: Выводит в точности: Invalid withdrawal amount or insufficient funds

Попробуйте сами

import { BankAccount } from './bankAccount.js';

// Проверка реализации
const testAccount = new BankAccount('Alex Johnson', 500);

console.log('Initial state:');
console.log(testAccount.getAccountInfo()); // "Alex Johnson: $500"

testAccount.deposit(200);  // Выводит в консоль: "Deposited $200"
console.log('New balance:', testAccount.getBalance()); // 700

testAccount.deposit(-50);  // Выводит в консоль: "Invalid deposit amount"
console.log('Balance unchanged:', testAccount.getBalance()); // 600

testAccount.withdraw(100); // Выводит в консоль: "Withdrew $100"
console.log('New balance:', testAccount.getBalance()); // 600

testAccount.withdraw(800); // Выводит в консоль: "Invalid withdrawal amount or insufficient funds"
console.log('Balance unchanged:', testAccount.getBalance()); // 600




Все уроки раздела Объектно-ориентированное программирование

Потренируйтесь самостоятельно: Онлайн-компилятор JavaScript