المعرفة:: 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!
- Procedural programming
- Object-oriented programming
- 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.