Learning Javascript
Learning javascript from Udemy. Course URL
Definition
JavaScript is a High-Level, Prototype-based object oriented,
multi-paradigm, interpreted or just-in-time compiled,
dynamic, single threaded, garbage-collected programming
language with first-class functions and non-blocking
event loop concurrency model.
- HighLevel:
In java script we do not have to manage resource at all like low level programming language (C or C++). A downside is the program is not optimized.
- Garbage Collection:
An inbuilt algorithm in javascript engine which automatically removes the unused objects from memory.
- JIT Compiled
- Multi-Paradigm:
An approach and mindset of structuring code, which will direct your coding style and technique. Three popular one are:
- Procedural Programming
- Object Oriented Programming
- Functional programming
- Prototype-based Object Oriented:
Almost everything is objects except primitives.
- First Class Functions: Functions are treated as variables. Can be passed into other functions, and return them from functions.
- Dynamic:
JavaScript is dynamic typed. Types become known at runtime and Data type of variable is automatically changed.
- Single-threaded: JavaScript runs in one single thread, so it can only do one thing at a time.
- Non-blocking Event Loop:
A long running task would block the single thread. So by using event loop, long running task, executes in the background and put them back in the main thread once they are finished.
PRACTICE PROJECTS
PROJECT URL
CONCEPTS
BASICS
PROJECTS