Question: ---------Use JavaScript programming language----------- Create BankAccount class with the following properties: accountNo, balance. This class should have a constructor to initialize these 2 properties. This

---------Use JavaScript programming language-----------

Create BankAccount class with the following properties: accountNo, balance. This class should have a constructor to initialize these 2 properties. This class should have these methods:

  • - deposit(amount): this method adds the amount to the balance

  • - withdraw(amount): this method subtracts the amount from the balance

  • - toString(): this method return Account # accountNo has QR balance. e.g., Account #123 has QR1000.

    Export the BankAccount class module as an object. 2) Create app.js program. Declare accounts variable array and initialize it with the following

    accounts:

accountNo balance

123 1000

234 4000

345 3500 Display the content of the accounts array.

3) Create SavingAccount class that extends BankAccount with an extra property: minBalance and an extra method distributeBenefit(benefitPercentage). This method computes the monthly benefit using the balance += (balance * benefitPercentage). The constructor should extend BankAccount to initialize the minBalance. Also, extend the toString() to indicate that this is a Saving Account. e.g., e.g., Saving Account #123 has QR1000.

Test savingAccount in app.js using the same table above and use a minimum balance of 500 for all accounts.

  1. 4) Create CurrentAccount class that extends BankAccount with an extra property: monthlyFee and an extra method deductFee(). This method subtracts the monthlyFee from the account balance only if the current balance is less than the minimum balance. The constructor should extend BankAccount to initialize the monthlyFee. Also, extend the toString() to indicate that this is a Current Account. e.g., e.g., Current Account #123 has QR1000.

    Test currentAccount in app.js using the same table above and use a monthly fee of 15 for all accounts.

  2. 5) Create Bank class to manage accounts. It should have a property accounts to store the accounts. Also, it should have the following methods:

    Method Functionality

    add(account) Add account (either Saving or Current) to accounts array. 2

getAccount(accountNo) deleteAccount(accountNo) avgBalance() sumBalance()

serialize() deserialize(accountsJson)

Return an account by Id

Delete an account by Id

Get the average balance for all accounts

Get the sum balance for all accounts

Return accounts as a JSON string

Takes JSON string representing accounts and returns an array of accounts.

6)

Create app.js program. Declare an instance of Bank class then add the following accounts:

accountNo

123 234 345 456 

balance type minimumBalance monthlyFee

500 Saving 1000 4000 Current 15 35000 Current 25 60000 Saving 1000

methods described above.

  1. Test all the bank

  2. Display the total

balance of all accounts. III. Go through all the Current accounts and charge the monthly fee

  1. Display the total balance of all accounts after charging the monthly fee.

  2. Go through all the Saving accounts and distribute the benefit using a 5% benefit.

  3. Display the total balance of all accounts after distributing the benefits

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!