IB
IRONCLAD
Banking System
CS101 · ARRAY METHODS PROJECT
SMART ATM TERMINAL
Methods: .push() · .pop() · .unshift() · .shift()  |  Starting balance: $1,000.00
⬡ ATM INTERFACE
Available Balance
$1,000.00
ACCOUNT ****-4721
error placeholder
Method: Array.push() — adds item to the end of the array
📋 TRANSACTION HISTORY ARRAY
transactionHistory[ ]  ·  0 items
Array is empty — make a transaction to begin
{ } RAW ARRAY OUTPUT
transactionHistory = []
LOAN PROCESSING ENGINE
Methods: .filter() · .map() · .reduce() · .some() · .every() · .find() · .findIndex()
📊 CREDIT SCORE INPUT
error placeholder
SCORING RULES
Score > 700  →  Eligible for loan
Score < 500  →  High risk flag
Score ≥ 900  →  Premium tier
All scores adjusted +20
FRAUD DETECTION SYSTEM
Methods: .includes() · .indexOf() · .slice() · .splice() · .forEach()
🚨 TRANSACTION ARRAY
Pre-loaded Transaction IDs:
Flagged Fraud ID:
⚠ 5510
🔍 STEP-BY-STEP AUDIT
Click "Run Audit" to begin the investigation
BANK MERGER OPERATIONS
Methods: .concat() · .flat() · .sort() · .reverse() · .join() · .fill()
🏦 BRANCH A — NORTH DISTRICT
🏦 BRANCH B — SOUTH DISTRICT
STEP 1 — .concat() Merge Both Branches

concat() creates a new array by joining branchA and branchB together without changing the originals

STEP 2 — .flat() Flatten Nested Data
messyData (nested array):
STEP 3 — .sort() then .reverse()

sort() arranges the flatData alphabetically, then reverse() flips the order

STEP 4 — .join() Create Customer Banner

join() turns allCustomers into one string separated by " - "

STEP 5 — .fill() Initialize Teller Windows

new Array(5).fill("Closed") — creates 5 slots all pre-filled with "Closed"

SECURITY SYSTEM
validateBankPassword() · generateYearlyReport() · string methods · loops
🔐 PASSWORD VALIDATOR
Enter a password to see strength
Requirements
◯ At least 8 characters
◯ Does not contain the word "password"
◯ Contains at least one vowel (a, e, i, o, u)
error placeholder
📅 YEARLY REPORT GENERATOR
IronClad Bank founded: Year 2000  ·  Anniversaries every 5 years
error placeholder
Leap Year Anniversary Normal Year
Enter a year range and click Generate Report