{"id":20001305,"url":"https://github.com/Programmer-RD-AI-Archive/Modern-JavaScript-Complete-guide-from-Novice-to-Ninja","last_synced_at":"2025-09-19T23:32:07.289Z","repository":{"id":214291911,"uuid":"731567585","full_name":"Programmer-RD-AI/Modern-JavaScript-Complete-guide-from-Novice-to-Ninja","owner":"Programmer-RD-AI","description":"Mastering the Art of JavaScript: A Comprehensive Journey from Beginner to Expert","archived":false,"fork":false,"pushed_at":"2024-04-21T11:22:33.000Z","size":754,"stargazers_count":1,"open_issues_count":2,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-11-13T05:17:15.278Z","etag":null,"topics":["firebase","javascript"],"latest_commit_sha":null,"homepage":"https://www.udemy.com/course/modern-javascript-from-novice-to-ninja/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Programmer-RD-AI.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2023-12-14T11:19:48.000Z","updated_at":"2024-04-21T11:22:36.000Z","dependencies_parsed_at":"2023-12-27T07:52:15.108Z","dependency_job_id":"2dcf8f08-2e4a-465d-869d-e7d6fde4afbb","html_url":"https://github.com/Programmer-RD-AI/Modern-JavaScript-Complete-guide-from-Novice-to-Ninja","commit_stats":null,"previous_names":["programmer-rd-ai/modern-javascript-complete-guide-from-novice-to-ninja"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Programmer-RD-AI%2FModern-JavaScript-Complete-guide-from-Novice-to-Ninja","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Programmer-RD-AI%2FModern-JavaScript-Complete-guide-from-Novice-to-Ninja/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Programmer-RD-AI%2FModern-JavaScript-Complete-guide-from-Novice-to-Ninja/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Programmer-RD-AI%2FModern-JavaScript-Complete-guide-from-Novice-to-Ninja/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Programmer-RD-AI","download_url":"https://codeload.github.com/Programmer-RD-AI/Modern-JavaScript-Complete-guide-from-Novice-to-Ninja/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":233606405,"owners_count":18701615,"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":["firebase","javascript"],"created_at":"2024-11-13T05:17:17.779Z","updated_at":"2025-09-19T23:32:06.577Z","avatar_url":"https://github.com/Programmer-RD-AI.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Data Types\n\nNumbers - 1,2,3,4,5,6,100,3.14\nString - 'hello world', \"\u003cmario@thenetninja.co.uk\u003e\"\nBoolean - true / false\nNull - Explicitly set a variable\nUndefined - Variables that aren't defined yet\nObject - Complex data structures (Arrays, Dates, Literals, etc...)\nSymbol - Used with objects..\n\n# Control Flow\n\n- Use loops for cycling through data\n- Use conditional statement for checking conditions\n\n# Function\n\n- A function is like a box that runs the code inside it and we can call it and the box runs and we can use the same code again and again... `showScores()`\n\n# Objects\n\n- Real life have properties and they also do...\n- For example an phone\n  - properties\n    - color\n    - size\n    - model\n  - things it can do (methods / functions)\n    - ring\n    - take a picture\n    - play music\n\n# Primitive vs Reference types\n\n## Primitive\n\nStored in the stack, the space in there is limited, much more faster\nThe stacks variable values refer to the actual variable name such as 'hello' -\u003e greeting and so on...s\nWhen one variable is assigned to another variable the value is copied.\n\n- numbers\n- strings\n- booleans\n- null\n- undefined\n- symbols\n\n## Reference\n\nStored in the heap, the space is much more but more slower\nThe objects are stored in the heap but the pointers or the thing that will let us know which variable is which is still stored in the stack, and in turn the program has to go to the stack and find the data in the `heap`.\nWhen one variable is assigned to another variable the value is the same meaning the point is the same for both variables and if the value is changed for 1 it is changed for both\n\n- all types of objects\n  - object literals\n  - arrays\n  - functions\n  - dates\n  - all other objects\n\n# Document Object Model (DOM)\n\nIt the heart of an web page manipulation\nCreated by the browser, can be accessed through `document` object\nThe following is the structure of an DOM:\nhtml -\u003e body -\u003e h1\n-\u003e div\n-\u003e p\n-\u003e p\n-\u003e div\n-\u003e head -\u003e title\n\n# CSS Selectors\n\n- ID = #id\n- CSS Class = .class\n- Tag with Class = tag.class\n- - = all\n\n# Form Events\n\n- Capture data or information from a user\n- Eg: a username or password\n- \"submit\" event is when a user clicks the submit button\n- \"keyboard\" events is when we can know if the user has pressed something...\n- RegEx is used to make sure that the value entered by the user is useful..\n\n# Async JavaScript\n\n## What is Asynchronous JavaScript?\n\nOne of the most important part of the javascript.\nGoverns how we perform tasks which take some time to complete (Getting data from a database)\nCode that can start something now and finish it later\nSynchronous javascript is where each statement is executed in an order, ane after the other and also only 1 at one time.\nBlock code blocks the next statement from running.\n\n## What are HTTP Requests?\n\nMake HTTP requests to get data from another server. We make these requests to API endpoints.\n\n# Object-Oriented Programming\n\n## Classes\n\nA blueprint for an object (describes how it should be constructed)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FProgrammer-RD-AI-Archive%2FModern-JavaScript-Complete-guide-from-Novice-to-Ninja","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FProgrammer-RD-AI-Archive%2FModern-JavaScript-Complete-guide-from-Novice-to-Ninja","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FProgrammer-RD-AI-Archive%2FModern-JavaScript-Complete-guide-from-Novice-to-Ninja/lists"}