4-Week JavaScript Bootcamp
✅ Total Duration: 4 Weeks
✅ Daily Hours: 7 Hours/Day (Monday to Friday)
✅ Total Weekly Hours: 35
Week 1 — JavaScript Foundations +
Core Problem Solving
🎯 Goal: Develop strong programming base, syntax mastery, and problem-solving
Topics Covered:
✅ Variables (let, const, var) — Scope, Hoisting Basics
✅ Data Types & Type Conversion
✅ Operators (Arithmetic, Comparison, Logical, Assignment)
✅ Conditional Statements (if, else, switch)
✅ Loops (for Loop)
✅ Functions (declaration, expressions, parameters, returns)
✅ Basic Debugging & Console Use
Logic Building Problems:
✔ Sum, Average, Max/Min Calculations
✔ Even/Odd, Prime Check
✔ Factorial (iterative)
✔ Multiplication Tables
✔ Simple Calculator Project
✔ Number Reversal, Palindrome Check (numbers)
Mini Projects:
Simple Quiz App
Basic Math Utilities App (factorial, prime, sum calculator)
Week 2 — Arrays, Strings, Objects &
Intermediate Problem Solving
🎯 Goal: Develop data structure logic using Arrays, Strings, and Objects
Topics Covered:
✅ Arrays & Methods (push, pop, shift, slice, splice, includes)
✅ Strings & Methods (length, charAt, substring, toUpperCase, split)
✅ Iterating Arrays/Strings (loops, for..of)
✅ Objects Introduction (key-value pairs)
✅ Arrays of Objects Basics
✅ Searching, Filtering Arrays
✅ Nested Data Handling
Logic Building Problems:
✔ Find Largest/Smallest Element in Array
✔ Reverse String, Word Counter
✔ Count Vowels/Consonants
✔ Palindrome Check (Strings)
✔ Frequency Count of Array Elements
✔ Searching in Array of Objects
Mini Projects:
Word Counter & Analyzer
Student Record System (Add/Search/List Students with Objects)
String Reverser & Palindrome Checker
Week 3 — Advanced Functions,
Recursion, Logic Patterns, Complex
Data
🎯 Goal: Master functions, recursion, logic decomposition, and patterns
Topics Covered:
✅ Functions as First-Class Citizens
✅ Arrow Functions
✅ Factorial, Fibonacci, Sum of Digits
✅ Array of Objects Deep Dive
✅ Sorting/Filtering Complex Data
✅ Pattern Printing for Visual Logic (Pyramids, Triangles)
Logic Building Problems:
✔ Factorial
✔ Fibonacci Series (Iterative & Recursive)
✔ Prime Number List Generator
✔ Sum of Digits
✔ Pattern Printing:
Star Pyramids
Mini Projects:
Enhanced Student Record System (with search, sort, filter)
Pattern Generator based on user input
Week 4 — Asynchronous JavaScript,
Promises, Fetch API, Async/Await
🎯 Goal: Master Asynchronous Flow, API Calls, Promises, and Real-World Data
Handling
Topics Covered:
✅ JS Call Stack, Event Loop, Web APIs Overview
✅ Synchronous vs Asynchronous Execution
✅ setTimeout, setInterval (timers)
✅ Introduction to Promises
✅ .then(), .catch() Chaining
✅ fetch() API with JSON handling
✅ Modern async/await Syntax
✅ Error Handling with try/catch
✅ Practical API Integration
Hands-On with Rest Countries API:
🌍 API: [Link]
Project Tasks:
✔ Fetch and Display Country Names, Flags, Populations
✔ Search Countries by Name
✔ Filter Countries by Region
✔ Find Largest Population
✔ Total Population Calculation
✔ Use .then() & async/await for API Calls
✔ Loading Indicators, Error Handling
Final Project:
Countries Explorer Application
o Full Search & Filter Functionality
o Display Country Details (flag, name, population)
o Clean Code with Async/Await
Practice Questions Part – 1 (Built-in Functions are not allowed):
Use Only console to display the output. No need to use UI for these
questions.
Pract
ice Questions Part – 2 (Solve first without built-in functions and then also
solve with built-in functions wherever they can be used):
Use Only console to display the output. No need to use UI for these
questions.
Practice Questions Part – 3:
Sample Array for Task 2:
let studentsArray = [
name: "stu1",
age: 18,
studentId: 11,
courses: ["a", "b", "c" ]
},
name: "stu2",
age: 19,
studentId: 12,
courses: ["d", "e", "f" ]
},
name: "stu3",
age: 20,
studentId: 13,
courses: ["g", "h", "i" ]
},
name: "stu4",
age: 21,
studentId: 14,
courses: ["j", "k", "l" ]
},
name: "stu5",
age: 22,
studentId: 15,
courses: ["n", "o", "p" ]
]
Practice Questions Part-4:
Practice Questions Part – 5 (Use both methods: Promises and
async/await):
You will be using RestCountries API to get the data. Sample code with
async/await and Promises is provided below:
That’s All !!