{"id":18655658,"url":"https://github.com/monciego/mastering-javascript","last_synced_at":"2025-11-05T19:30:28.700Z","repository":{"id":139792994,"uuid":"437203733","full_name":"monciego/mastering-javascript","owner":"monciego","description":"Explore JavaScript fundamentals and more with example code.","archived":false,"fork":false,"pushed_at":"2023-09-24T16:47:05.000Z","size":120,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-12-27T14:40:13.387Z","etag":null,"topics":["javacript","javascript-fudamentals","learn-javascript","vanilla-javascript"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/monciego.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.MD","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2021-12-11T06:13:24.000Z","updated_at":"2023-09-24T05:05:59.000Z","dependencies_parsed_at":null,"dependency_job_id":"31d99cfe-9810-44e2-872c-2b65d283046d","html_url":"https://github.com/monciego/mastering-javascript","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/monciego%2Fmastering-javascript","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/monciego%2Fmastering-javascript/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/monciego%2Fmastering-javascript/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/monciego%2Fmastering-javascript/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/monciego","download_url":"https://codeload.github.com/monciego/mastering-javascript/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239470453,"owners_count":19644127,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["javacript","javascript-fudamentals","learn-javascript","vanilla-javascript"],"created_at":"2024-11-07T07:19:39.634Z","updated_at":"2025-11-05T19:30:28.651Z","avatar_url":"https://github.com/monciego.png","language":"JavaScript","readme":"# **Mastering JavaScript**\n\nWelcome to my \"Mastering JavaScript\" repository! This collection of topics and exercises is designed to help you learn and master the fundamentals of JavaScript.\n\nExplore the various sections below to deepen your understanding of JavaScript's key concepts:\n\n## Fundamentals\n\nCovering essential JavaScript topics from variables and data types to conditional statements and loops.\n\n## Connecting the Dots\n\nBuilding on the fundamentals, these sections connect the dots and delve into more advanced concepts like string manipulation, array methods, and working with the DOM.\n\n## DOM (Document Object Model)\n\nUncover the power of JavaScript in the web browser by learning how to manipulate HTML and interact with users through the Document Object Model.\n\nEach topic includes code examples to illustrate key concepts and practices. Feel free to explore, learn, and use these resources to enhance your JavaScript skills.\n\nHappy coding!\n\n### [Fundamentals](https://github.com/monciego/mastering-javascript/tree/main/fundamentals)\n\n| #   | Topic                             | Code                                                                                                             |\n| :-- | :-------------------------------- | :--------------------------------------------------------------------------------------------------------------- |\n| 00  | Inline                            | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/fundamentals/00-inline)                         |\n| 01  | Internal                          | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/fundamentals/01-internal)                       |\n| 02  | External                          | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/fundamentals/02-external)                       |\n| 03  | Helper Methods                    | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/fundamentals/03-helper-methods)                 |\n| 04  | Variables                         | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/fundamentals/04-variables)                      |\n| 05  | Variable Naming Rules             | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/fundamentals/05-variable-naming-rules)          |\n| 06  | Javascript Keywords               | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/fundamentals/06-javascript-keywords)            |\n| 07  | let, const, var                   | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/fundamentals/07-let-const-var)                  |\n| 08  | String Concatenation              | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/fundamentals/08-string-concatenation)           |\n| 09  | Number Basics                     | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/fundamentals/09-number-basics)                  |\n| 10  | Numbers - Additional Features     | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/fundamentals/10-more-numbers)                   |\n| 11  | Implicit Type Conversion          | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/fundamentals/11-implicit-type-conversion)       |\n| 12  | Data Types                        | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/fundamentals/12-data-types)                     |\n| 13  | Arrays                            | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/fundamentals/13-arrays)                         |\n| 14  | Functions - Declare, Invoke       | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/fundamentals/14-functions-declare-invoke)       |\n| 15  | Functions - Parameters, Arguments | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/fundamentals/15-functions-parameters-arguments) |\n| 16  | Functions - Return                | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/fundamentals/16-functions-return)               |\n| 17  | Functions - Expressions           | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/fundamentals/17-functions-expression)           |\n| 18  | Arrow Functions                   | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/fundamentals/18-arrow-functions)                |\n| 19  | Hoisting                          | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/fundamentals/19-hoisting)                       |\n| 20  | Objects                           | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/fundamentals/20-objects)                        |\n| 21  | Conditional Statements            | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/fundamentals/21-conditional-statements)         |\n| 22  | if, else, else if                 | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/fundamentals/22-if-else-elseif)                 |\n| 23  | Equality                          | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/fundamentals/23-equality)                       |\n| 24  | Logical Operators                 | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/fundamentals/24-logical-operators)              |\n| 25  | Switch Statement                  | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/fundamentals/25-switch-statement)               |\n| 26  | While Loops                       | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/fundamentals/26-while-loop)                     |\n| 27  | Do While Loops                    | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/fundamentals/27-do-while-loop)                  |\n| 28  | For Loop                          | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/fundamentals/28-for-loop)                       |\n\n### [Connecting the dots](https://github.com/monciego/mastering-javascript/tree/main/connecting-the-dots)\n\n| #   | Topic                                      | Code                                                                                                                                 |\n| :-- | :----------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------- |\n| 29  | String Properties And Methods              | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/connecting-the-dots/29-string-properties-and-methods)               |\n| 30  | Template Literals                          | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/connecting-the-dots/30-template-literals)                           |\n| 31  | Array Properties And Methods               | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/connecting-the-dots/31-array-properties-and-methods)                |\n| 32  | Array and for loop - Exercise              | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/connecting-the-dots/32-array-and-forloop-exercise)                  |\n| 33  | Calculate - Exercise                       | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/connecting-the-dots/33-calculate-exercise)                          |\n| 34  | Value Vs. Reference                        | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/connecting-the-dots/34-value-vs-reference)                          |\n| 35  | Null And Undefined                         | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/connecting-the-dots/35-null-and-undefined)                          |\n| 36  | Truthy And Falsy                           | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/connecting-the-dots/36-truthy-and-falsy)                            |\n| 37  | Ternary Operator                           | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/connecting-the-dots/37-ternary-operator)                            |\n| 38  | Global Scope                               | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/connecting-the-dots/38-global-scope)                                |\n| 39  | Local Scope                                | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/connecting-the-dots/39-local-scope)                                 |\n| 40  | Variable Lookup                            | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/connecting-the-dots/40-variable-lookup)                             |\n| 41  | Callback Functions, Higher Order Functions | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/connecting-the-dots/41-callback-functions-and-high-order-functions) |\n| 42  | Array Iterators                            | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/connecting-the-dots/42-array-iterators)                             |\n| 43  | For Each                                   | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/connecting-the-dots/43-forEach)                                     |\n| 44  | Map                                        | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/connecting-the-dots/44-map)                                         |\n| 45  | Filter                                     | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/connecting-the-dots/45-filter)                                      |\n| 46  | Find                                       | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/connecting-the-dots/46-find)                                        |\n| 47  | Reduce                                     | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/connecting-the-dots/47-reduce)                                      |\n| 48  | Math Object                                | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/connecting-the-dots/48-math-object)                                 |\n| 49  | Date Object                                | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/connecting-the-dots/49-date-object)                                 |\n\n### [DOM](https://github.com/monciego/mastering-javascript/tree/main/dom)\n\n| #   | Topic                                        | Code                                                                                                              |\n| :-- | :------------------------------------------- | :---------------------------------------------------------------------------------------------------------------- |\n| 50  | DOM - General Concepts                       | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/dom/50-dom-general-concepts)                     |\n| 51  | Window And Document Overview                 | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/dom/51-window-and-document)                      |\n| 52  | GetElementById                               | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/dom/52-getElementById)                           |\n| 53  | Get Elements By Tag Name                     | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/dom/53-getElementByTagName)                      |\n| 54  | Get Elements By Class Name                   | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/dom/54-getElementByClassName)                    |\n| 55  | QuerySelector And QuerySelectorAll           | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/dom/55-querySelector-querySelectorAll)           |\n| 56  | Navigate The Dom - Children                  | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/dom/56-children)                                 |\n| 57  | Navigate The Dom - Parent Element            | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/dom/57-parent-element)                           |\n| 58  | Navigate The Dom - NextSibling, PrevSibling  | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/dom/58-nextSibling-prevSibling)                  |\n| 59  | Navigate The Dom - Next/Prev Element Sibling | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/dom/59-nextElementSibling-prevElementSibling)    |\n| 60  | TextContent And NodeValue                    | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/dom/60-textContent-nodeValue)                    |\n| 61  | GetAttribute(), SetAttribute()               | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/dom/61-getAttribute-setAttribute)                |\n| 62  | ClassList And ClassName                      | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/dom/62-classList-className)                      |\n| 63  | CreateElement                                | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/dom/63-createElement-createTextNode-appendChild) |\n| 64  | InsertBefore                                 | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/dom/64-insertBefore)                             |\n| 65  | ReplaceChild                                 | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/dom/65-replace-child)                            |\n| 66  | Prepend InnerText                            | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/dom/66-prepend-innerText)                        |\n| 67  | Remove And RemoveChild                       | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/dom/67-remove-removeChild)                       |\n| 68  | InnerHTML And TextContent                    | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/dom/68-innerHTML-textContent)                    |\n| 69  | Change CSS With Style Property               | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/dom/69-changing-css)                             |\n| 70  | Click Event                                  | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/dom/70-click-event)                              |\n| 71  | Function Reference                           | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/dom/71-function-reference)                       |\n| 72  | Mouse Events                                 | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/dom/72-mouse-events)                             |\n| 73  | Key Events                                   | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/dom/73-key-events)                               |\n| 74  | Event Object                                 | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/dom/74-event-object)                             |\n| 75  | CurrentTarget Vs Target                      | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/dom/75-currentTarget-target)                     |\n| 76  | Event Bubbling Capturing                     | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/dom/76-event-bubbling-and-capturing)             |\n| 77  | Event Propogation Example                    | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/dom/77-event-propogation-example)                |\n| 78  | Form Submit                                  | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/dom/78-form-submit)                              |\n| 79  | Local Storage                                | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/dom/79-local-storage)                            |\n| 80  | Local Storage With Multiple Values           | [\u003c/\u003e](https://github.com/monciego/mastering-javascript/tree/main/dom/80-local-storage-with-mulitple-values)       |\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n## Contributing\n\n**Interested in contributing?**\nPlease read our [Contributing Guide](CONTRIBUTING.md) to get started.\n\n## Acknowledgment\n\nThe code examples and topics covered in this repository are directly sourced from the tutorials and content created by [Coding Addict](https://www.youtube.com/c/CodingAddict) (John Smilga) on YouTube. We acknowledge and thank John Smilga for his exceptional tutorials, which form the foundation of this project.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmonciego%2Fmastering-javascript","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmonciego%2Fmastering-javascript","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmonciego%2Fmastering-javascript/lists"}