Dive into practical and theoretical exercises to level up your JavaScript skills.
-
Clone this repo
git clone https://github.com/afuhflynn/javascript_crash_course.git cd javascript_crash_course
-
Fork this repository on GitHub to contribute your own lessons or improvements.
-
Open the course in your editor of choice and start learning!
hint: Use (ctrl + shift + v for windows and linux) or (command + shift + v for mac) in VSCODE to preview the markdown files
- Welcome to my JavaScript course
- Table of Contents
- Introduction
- Lesson 1: Variables & Data Types
- Lesson 2: Strings & Template Literals
- Lesson 3: Numbers & Math
- Lesson 4: Booleans & Logic
- Lesson 5: Control Flow & Loops
- Lesson 6: Arrays & Iterations
- Lesson 7: Objects & Prototypes
- Lesson 8: Expressions & Operators
- Lesson 9: Functions & Scope
- Lesson 10: The Date Object
- Lesson 11: The Math Module
- Lesson 12: DOM Manipulation
- Lesson 13: JavaScript Client Side Library (jQuery)
- Lesson 14: OOP in JavaScript
Before we begin, first lets get ourselves familiar with what JavaScript is all about
JavaScript is a dynamic web (client side / frontend) programming language.
JavaScript was developed by Brendan Eich, a developer at Netscape Communications Corporation, in 1995. Its initial development was very rapid, and much of the criti‐cism leveled at JavaScript has cited the lack of planning foresight during its development. However, Brendan Eich was not a dabbler: he had a solid foundation in computer science, and incorporated remarkably sophisticated and prescient ideas into JavaScript. In many ways, it was ahead of its time, and it took 15 years for main‐stream developers to catch on to the sophistication the language offered.
JavaScript started life with the name Mocha, and was briefly named LiveScript before being officially renamed to JavaScript in a Netscape Navigator release in 1995. The word “Java” in “JavaScript” was not coincidental, but it is confusing: aside from a common syntactic ancestry, JavaScript has more in common with Self (a prototype-based language developed at Xerox PARC in the mid-’80s) and Scheme (a language developed in the 1970s by Guy Steele and Gerald Sussman, which was in turn heavily influenced by Lisp and ALGOL) than with Java. Eich was familiar with both Self and Scheme, and used some of their forward-thinking paradigms in developing JavaScript. The name JavaScript was partially a marketing attempt to tie into the success Java was enjoying at the time.1 In November 1996, Netscape announced that they had submitted JavaScript to Ecma, a private, international nonprofit standards organization that carries significant influence in the technology and communications industries. Ecma International published the first edition of the ECMA-26 specification, which was, in essence, JavaScript.
NOTES:
In recent years JavaScript has gone from just a client side web programming language to powering one of the world's largest code editor (VS Code with the help of TypeScript and Electron Framework) and it has also gained popularity in the domains of mobile development and server side scripting with the help of Node.js.
Refer to lesson1/NOTES.md or lesson1/practicals.js
Refer to lesson2/NOTES.md or lesson2/practicals.js
Refer to lesson3/NOTES.md or lesson3/practicals.js
Refer to lesson4/NOTES.md or lesson4/practicals.js
Refer to lesson5/NOTES.md or lesson5/practicals.js
Refer to lesson6/NOTES.md or lesson6/practicals.js
Refer to lesson7/NOTES.md or lesson7/practicals.js
Refer to lesson8/NOTES.md or lesson8/practicals.js
Refer to lesson9/NOTES.md or lesson9/practicals.js
Refer to lesson10/NOTES.md or lesson10/practicals.js
Refer to lesson11/NOTES.md or lesson11/practicals.js
Refer to lesson12/NOTES.md or lesson12/practicals.js
Refer to lesson13/NOTES.md or lesson13/practicals.js
Refer to lesson14/NOTES.md or lesson14/practicals.js
Check the exercises at: [Exercises.txt] or see solutions at: [solution.js]
- Fork the repo
- Create a branch:
git checkout -b feature/lessonX
- Add your lesson folder (
lessonX/...
) - Commit:
git commit -m "Add lessonX: <Topic>"
- Push:
git push origin feature/lessonX
- Open a Pull Request
For more info read our contributing guide: CONTRIBUTING
This project is licensed under the MIT License. See LICENSE for details.
Created with
♥️ byAfuh Flynn