A comprehensive repository documenting JavaScript concepts with practical examples and hands-on practice files. This collection covers everything from core language fundamentals to browser APIs and modern asynchronous programming patterns.
Core JavaScript concepts with detailed explanations:
overview.md- JavaScript language overview and introductioncode_fundamentals.md- Basic programming concepts and syntaxjavascript_execution_model.md- How JavaScript code executesdata_types.md- Primitive and reference typesobjects_in_js.md- Object creation, manipulation, and patternsspecial_notes_on_types.md- Type coercion, comparison, and edge casesexpressions_and_scope.md- Variable scope, hoisting, and expressionsbasic_syntax_extended.md- Advanced syntax featuresobject_oriented_js.md- Classes, inheritance, and OOP patternspromises_async_await.md- Asynchronous programming patternsmodules.md- ES6 modules and module patternsadditionals.md- Additional concepts and advanced topics
Browser-specific JavaScript features and APIs:
Document.md- DOM manipulation and document interfacecoordinates.md- Working with element positioning and coordinatesevents.md- Event handling and event-driven programmingdrawing_on_canvas.md- HTML5 Canvas API and graphicsstylesAndClasses.md- Dynamic styling and CSS manipulationbrowser_and_storage.md- Local storage, session storage, and cookiesforms.md- Form handling and validation
Extended concepts and modern web development:
Fetch.md- Fetch API and HTTP requestsevent_loops.md- JavaScript event loop and concurrency modelnetwork_requests.md- Various methods of making network requestsbasic_animations.md- CSS and JavaScript animations
Interactive examples demonstrating browser APIs:
- Cookie Management:
cookie.html,cookie.js- Working with browser cookies - Canvas Drawing:
draw.html,draw.js,drawStyles.css- HTML5 Canvas examples - Form Handling:
form.html,form.js- Form validation and processing - DOM Manipulation:
index.html,index.js,indexStyles.css- Basic DOM operations - Fetch API:
randomFetch.html,randomFetch.js- HTTP requests and API calls - Web Storage:
storage.html,storage.js- Local and session storage examples
Advanced topics with practical implementations:
- Animations:
basic_animation.html,basicAnimationStyles.css- CSS/JS animations - Network Requests:
network.html,network.js- Various networking approaches
Hands-on examples of JavaScript language features:
JSON.js- JSON parsing and manipulationMap&Set.js- ES6 Map and Set data structuresasyncAwait.js- Async/await patterns and examplescallAndBind.js- Function context manipulationcallback.js- Callback patterns and higher-order functionsclasses.js- ES6 classes and inheritanceclosure.js- Closures and lexical scopingdestructure.js- Destructuring assignment patternsfunctions.js- Function declarations, expressions, and arrow functionsnewFunction.js- Function constructor and dynamic functionsobjectEntries.js- Object iteration and manipulation methodsobjects.js- Object creation patterns and methodspromiseAPIs.js- Promise utility methods and patternspromises.js- Promise creation and chainingthis.js- Context binding and 'this' keywordvariableScope.js- Variable scoping examplestest.js- Testing and experimentation file
-
Clone the repository:
git clone https://github.com/rashidpbi/js-practice.git cd js-practice -
Explore the documentation: Start with
docs/1_javascript_language/overview.mdfor a comprehensive introduction. -
Run the examples: Open any HTML file in the
practice/directory in your browser to see the concepts in action. -
Experiment: Use the JavaScript files in
practice/javascript_language/to experiment with core concepts.
- Start with
docs/1_javascript_language/- read through the fundamentals - Practice with files in
practice/javascript_language/ - Experiment with basic DOM manipulation using
practice/Browser_document_event_interfaces/index.html
- Dive into asynchronous programming with promises and async/await examples
- Explore browser APIs and storage mechanisms
- Practice with fetch API and network requests
- Study the event loop and execution model
- Work with canvas drawing and animations
- Explore advanced object-oriented patterns and modules
- Core JavaScript (ES5/ES6+)
- DOM Manipulation
- HTML5 APIs (Canvas, Storage, etc.)
- Asynchronous Programming (Promises, Async/Await)
- Modern JavaScript Features (Classes, Modules, Destructuring)
- Browser APIs (Fetch, Events, Coordinates)
- Web Storage (LocalStorage, SessionStorage, Cookies)
This repository serves as a personal learning collection, but feel free to:
- Suggest improvements or corrections
- Share additional examples or use cases
- Report any issues or outdated information
This project is open source and available for educational purposes.
Happy Learning! 🎓
This repository is continuously updated as new concepts are learned and practiced.