Skip to content

Aniketgudgal/JavaScript

Repository files navigation

JavaScript Learning and Practice Repository

🚀 Overview

This repository is a hands-on JavaScript learning workspace, with interactive examples, UI demos, and practical algorithm challenges. Each folder is a focused topic or mini-project to practice core JavaScript concepts and DOM skills.

📁 Folder structure

  • Array/ - array manipulation tasks and search logic
  • basic calculator/ - simple calculator UI and logic
  • DOM/ - DOM events and dynamic UI interactions
  • Loop/ - loops and sequence processing tasks
  • Rest Operator/ - rest parameter practice
  • Spread Operator/ - spread operator usage
  • Todo List/ - small task manager app with DOM
  • Validation/ - input validation (Aadhar, driving license, email, mobile, PAN)
  • Variables/ - variable declaration and basic I/O

🎯 What I’ve practiced in this repository

Array

  • Finding elements [linear search]
  • Using Array.prototype.find and manual loops
  • Demonstrating array methods and element updates

basic calculator

  • DOM event listeners for buttons
  • Basic form parsing and arithmetic operations
  • Handling edge cases like empty input / division by zero

DOM events

  • click, change, onload event usage
  • Dynamic style updates (background color, font-size)
  • Image source swapping and show/hide toggles
  • Updating display value from UI controls

Loop problems

  • Counting digits in a number (DigitCount.js)
  • Summing even/odd numbers (EvenSum.js, OddSum.js)
  • Maximum value from array
  • Printing sequences (NaturalNum, PrintEvenNum, PrintOddNum, PrintTable)
  • Reverse sequence printing and cumulative sums

Rest operator

  • Function with ...args to collect variable parameter list
  • Aggregation and flexible call signatures

Spread operator

  • Spreading arrays and object literals
  • Cloning and extending data without mutation

Todo List app

  • Add, remove, and clear list items
  • Persisting tasks in browser local state (optional enhancement)
  • Using class manipulation for completed state

Validation tasks

  • Mobile number pattern with regex
  • Email format checking (regex validation)
  • PAN, Aadhar, and driving license specific value checks
  • Immediate feedback for invalid input

Variables

  • Declaring with var, let, const
  • Reading user input with prompt-like UI
  • Basic arithmetic operations (e.g., cube calculation)

📚 Current learning path (upcoming topics)

  1. ES6+: let / const, arrow functions, template literals
  2. Modules (import/export) and code organization
  3. Asynchronous JavaScript: promises, async/await, fetch
  4. Advanced DOM: event delegation, accessibility, performance
  5. Data structures: Set, Map, WeakMap, WeakSet
  6. OOP in JS: classes, prototypes, inheritance
  7. Testing: Jest or Mocha for unit tests
  8. Build tools: NPM scripts, bundlers (Webpack/Vite)

🛠️ Style and quality suggestions

  • Add README instructions in each folder for quick run steps
  • Add comments in JS files describing logic
  • Introduce linting (ESLint) and formatting (Prettier)
  • Add small test cases or helper logs in each script

🎉 Summary

This repo is an excellent practical base for beginner-to-intermediate JavaScript. Continue filling the Validation and DOM sub-projects, then expand with async and module-based features for next-level readiness.

About

This repository contains JavaScript practice code covering both basic and advanced concepts. It includes topics like variables, loops, functions, arrays, objects, and advanced features such as promises, async/await, and ES6+. It is useful for beginners and for revising core JavaScript concepts.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors