المعرفة:: JavaScript الحالة::مؤرشفة المراجع:: syahshiimi’s notes, The Complete JavaScript Course 2022 From Zero to Expert


1. High Level Language

What this means is that JavaScript is a language that does not require you to manage the computer’s resources such as memory management.

2. Garbage Collected

This happens through this process known as garbage collection. This process removes and stops any unnecessary applications from running in the background.

3. Interpreted or just-in-time compiled

What this means is that it is a very fast programming language that deals with abstracting on top machine code (binary). This is handled directly via the JS engine.

4. Multi-paradigm

An approach or mindset when it comes to structuring the code. JavaScript can use any of these three types of programming!

  1. Procedural programming
  2. Object-oriented programming
  3. Functional programming

5. Prototype-based object-oriented

This prototype-based allows us to have inheritance to other elements.

6. First-class Functions

This means that functions are treated as variables. This means that we can run functions within functions and return function value.

7. Dynamic

We do not assign data type to variables. This means that data variables are automatically changed when it is running through the runtime.

8. Single-threaded

  • The concurrency model demonstrates how the JavaScript engine handles multiple tasks. As JavaScript is a single-threaded approach where it can only do one thing at a time.
  • This means that a long piece of code will result in a blocking.

9. Non-blocking event loop

A non-blocking loop allows us to take long running tasks and run them in the background, later putting it into the main thread in the future once they are finished.