diff --git a/README.md b/README.md
index 924a02f7..79db07f1 100644
--- a/README.md
+++ b/README.md
@@ -1,17 +1,30 @@
+
+
+
+
+
+
+
+
+
+
+
+Click to expand full table of contents
1. [**Call Stack**](#1-call-stack)
2. [**Primitive Types**](#2-primitive-types)
@@ -111,1182 +127,27 @@ All the translations for this repo will be listed below:
32. [**Partial Applications, Currying, Compose and Pipe**](#32-partial-applications-currying-compose-and-pipe)
33. [**Clean Code**](#33-clean-code)
-
-
-## 1. Call Stack
-
-The call stack is a mechanism that the JavaScript interpreter uses to keep track of function execution within a program. In JavaScript, functions are executed in the order they are called. The call stack follows the Last In, First Out (LIFO) principle, meaning that the last function pushed onto the stack is the first one to be executed.
-
-According to the ECMAScript specification, the call stack is defined as part of the execution context. Whenever a function is called, a new execution context is created and placed at the top of the stack. Once the function completes, its execution context is removed from the stack, and control returns to the previous context. This helps manage synchronous code execution, as each function call must complete before the next one can begin.
-
-### Reference
-
-- [Call Stack β MDN](https://developer.mozilla.org/en-US/docs/Glossary/Call_stack)
-
-###
Articles
-
-- [Understanding Javascript Call Stack, Event Loops β Gaurav Pandvia](https://medium.com/@gaurav.pandvia/understanding-javascript-function-executions-tasks-event-loop-call-stack-more-part-1-5683dea1f5ec)
-- [Understanding the JavaScript Call Stack β Charles Freeborn](https://medium.freecodecamp.org/understanding-the-javascript-call-stack-861e41ae61d4)
-- [Javascript: What Is The Execution Context? What Is The Call Stack? β Valentino Gagliardi](https://medium.com/@valentinog/javascript-what-is-the-execution-context-what-is-the-call-stack-bd23c78f10d1)
-- [What is the JS Event Loop and Call Stack? β Jess Telford](https://gist.github.com/jesstelford/9a35d20a2aa044df8bf241e00d7bc2d0)
-- [Understanding Execution Context and Execution Stack in Javascript β Sukhjinder Arora](https://blog.bitsrc.io/understanding-execution-context-and-execution-stack-in-javascript-1c9ea8642dd0)
-- [How JavaScript Works Under The Hood: An Overview of JavaScript Engine, Heap and, Call Stack β Bipin Rajbhar](https://dev.to/bipinrajbhar/how-javascript-works-under-the-hood-an-overview-of-javascript-engine-heap-and-call-stack-1j5o)
-- [The JS Call stack Explained in 9 minutes](https://www.youtube.com/watch?v=W8AeMrVtFLY) - Colt Steel (YouTube)
-
-###
Videos
-
-- [Javascript: the Call Stack explained β Coding Blocks India](https://www.youtube.com/watch?v=w6QGEiQceOM)
-- [The JS Call Stack Explained In 9 Minutes β Colt Steele](https://www.youtube.com/watch?v=W8AeMrVtFLY)
-- [What is the Call Stack? β Eric Traub](https://www.youtube.com/watch?v=w7QWQlkLY_s)
-- [The Call Stack β Kevin Drumm](https://www.youtube.com/watch?v=Q2sFmqvpBe0)
-- [Understanding JavaScript Execution β Codesmith](https://www.youtube.com/watch?v=Z6a1cLyq7Ac&list=PLWrQZnG8l0E4kd1T_nyuVoxQUaYEWFgcD)
-- [What the heck is the event loop anyway? β Philip Roberts](https://www.youtube.com/watch?v=8aGhZQkoFbQ)
-- [How JavaScript Code is executed? β€οΈ& Call Stack β Akshay Saini](https://www.youtube.com/watch?v=iLWTnMzWtj4&list=PLlasXeu85E9cQ32gLCvAvr9vNaUccPVNP)
-- [Call Stacks - CS50](https://www.youtube.com/watch?v=aCPkszeKRa4)
-- [Learn the JavaScript Call Stack - codecupdev](https://www.youtube.com/watch?v=HXqXPGS96rw)
-- [JavaScript Functions and the Call Stack | How does the Call stack work - Chidre'sTechTutorials](https://www.youtube.com/watch?v=P6H-T4cUDR4)
-
-**[β¬ Back to Top](#table-of-contents)**
-
----
-
-## 2. Primitive Types
-
-According to the ECMAScript specification, JavaScript has six primitive data types: string, number, bigint, boolean, undefined, and symbol. These types are immutable, meaning their values cannot be altered. There is also a special primitive type called null, which represents the intentional absence of any object value.
-
-Primitive values are directly assigned to a variable, and when you manipulate a primitive type, you're working directly on the value. Unlike objects, primitives do not have properties or methods, but JavaScript automatically wraps primitive values with object counterparts when necessary (e.g., when calling methods on strings).
-
-### Reference
-
-- [JavaScript data types and data structures β MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Data_structures#Primitive_values)
-
-###
Articles
-
-- [Primitive and Non-primitive data-types in JavaScript - GeeksforGeeks](https://www.geeksforgeeks.org/primitive-and-non-primitive-data-types-in-javascript)
-- [How numbers are encoded in JavaScript β Dr. Axel Rauschmayer](http://2ality.com/2012/04/number-encoding.html)
-- [What Every JavaScript Developer Should Know About Floating Point Numbers β Chewxy](https://blog.chewxy.com/2014/02/24/what-every-javascript-developer-should-know-about-floating-point-numbers/)
-- [The Secret Life of JavaScript Primitives β Angus Croll](https://javascriptweblog.wordpress.com/2010/09/27/the-secret-life-of-javascript-primitives/)
-- [Primitive Types β Flow](https://flow.org/en/docs/types/primitives/)
-- [(Not) Everything in JavaScript is an Object β Daniel Li](https://dev.to/d4nyll/not-everything-in-javascript-is-an-object)
-- [JavaScript data types and data structures β MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Data_structures#Primitive_values)
-- [Diving Deeper in JavaScripts Objects β Arfat Salman](https://blog.bitsrc.io/diving-deeper-in-javascripts-objects-318b1e13dc12)
-- [The differences between Object.freeze() vs Const in JavaScript β Bolaji Ayodeji](https://medium.com/@bolajiayodeji/the-differences-between-object-freeze-vs-const-in-javascript-4eacea534d7c)
-- [Object to primitive conversion β JavaScript.Info](https://javascript.info/object-toprimitive)
-- [Methods of primitives - Javascript.info](https://javascript.info/primitives-methods)
-
-###
Videos
-
-- [JavaScript Reference vs Primitive Types β Academind](https://www.youtube.com/watch?v=9ooYYRLdg_g)
-- [JavaScript Primitive Types β Simon Sez IT](https://www.youtube.com/watch?v=HsbWQsSCE5Y)
-- [Value Types and Reference Types in JavaScript β Programming with Mosh](https://www.youtube.com/watch?v=e-_mDyqm2oU)
-- [JavaScript Primitive Data Types β Avelx](https://www.youtube.com/watch?v=qw3j0A3DIzQ)
-- [Everything you never wanted to know about JavaScript numbers β Bartek Szopka](https://www.youtube.com/watch?v=MqHDDtVYJRI)
-- [What are variables in Javascript? β JS For Everyone](https://www.youtube.com/watch?v=B4Bbmei_thw)
-- [TIPOS DE DATOS PRIMITIVOS en JAVASCRIPT - La Cocina del CΓ³digo](https://www.youtube.com/watch?v=cC65D2q5f8I)
-- [Data Type in JavaScript - ScholarHat](https://www.youtube.com/watch?v=aFDvBjVjCh8)
-
-**[β¬ Back to Top](#table-of-contents)**
-
----
-
-## 3. Value Types and Reference Types
-
-According to the ECMAScript specification, value types are stored directly in the location that the variable accesses. These include types like number, string, boolean, undefined, bigint, symbol, and null. When you assign a value type to a variable, the value itself is stored.
-
-Reference types, on the other hand, are objects stored in the heap. Variables assigned to reference types actually store references (pointers) to the objects, not the objects themselves. When you assign a reference type to another variable, both variables reference the same object in memory.
-
-###
Articles
-
-- [Explaining Value vs. Reference in Javascript β Arnav Aggarwal](https://codeburst.io/explaining-value-vs-reference-in-javascript-647a975e12a0)
-- [Primitive Types & Reference Types in JavaScript β Bran van der Meer](https://gist.github.com/branneman/7fb06d8a74d7e6d4cbcf75c50fec599c)
-- [Value Types, Reference Types and Scope in JavaScript β Ben Aston](https://medium.com/@benastontweet/lesson-1b-javascript-fundamentals-380f601ba851)
-- [Back to roots: JavaScript Value vs Reference β Miro Koczka](https://medium.com/dailyjs/back-to-roots-javascript-value-vs-reference-8fb69d587a18)
-- [Grasp "By Value" and "By Reference" in JavaScript β LΓ©na Faure](https://hackernoon.com/grasp-by-value-and-by-reference-in-javascript-7ed75efa1293)
-- [JavaScript Reference and Copy Variables β VΓtor Capretz](https://hackernoon.com/javascript-reference-and-copy-variables-b0103074fdf0)
-- [JavaScript Primitive vs Reference Values](http://www.javascripttutorial.net/javascript-primitive-vs-reference-values/)
-- [JavaScript by Reference vs. by Value β nrabinowitz](https://stackoverflow.com/questions/6605640/javascript-by-reference-vs-by-value)
-- [JavaScript Interview Prep: Primitive vs. Reference Types β Mike Cronin](https://dev.to/mostlyfocusedmike/javascript-interview-prep-primitive-vs-reference-types-3o4f)
-- [JavaScript map vs. forEach: When to Use Each One - Sajal Soni](https://code.tutsplus.com/tutorials/javascript-map-vs-foreach-when-to-use-each-one--cms-38365)
-
-###
Videos
-
-- [Javascript Pass by Value vs Pass by Reference β techsith](https://www.youtube.com/watch?v=E-dAnFdq8k8)
-- [JavaScript Value vs Reference Types β Programming with Mosh](https://www.youtube.com/watch?v=fD0t_DKREbE)
-- [VALORES vs REFERENCIAS en JAVASCRIPT - La Cocina del CΓ³digo](https://www.youtube.com/watch?v=AvkyOrWkuQc)
-- [JavaScript - Reference vs Primitive Values/ Types - Academind](https://www.youtube.com/watch?v=9ooYYRLdg_g)
-- [Value Types and Reference Types in JavaScript - Programming with Mosh](https://www.youtube.com/watch?v=e-_mDyqm2oU)
-
-**[β¬ Back to Top](#table-of-contents)**
-
----
-
-## 4. Implicit, Explicit, Nominal, Structuring and Duck Typing
-
-The ECMAScript specification defines JavaScript as a dynamically typed language, meaning that types are associated with values rather than variables, and type checking occurs at runtime. There are various ways JavaScript manages types:
-
-Implicit Typing (or Type Coercion): This occurs when JavaScript automatically converts one data type to another when required. For instance, JavaScript might convert a string to a number during an arithmetic operation. While this can simplify some code, it can also lead to unexpected results if not handled carefully.
-
-Explicit Typing: Unlike implicit typing, explicit typing involves manually converting a value from one type to another using functions like Number(), String(), or Boolean().
-
-Nominal Typing: JavaScript doesn't natively support nominal typing, where types are explicitly declared and checked. However, TypeScript, a superset of JavaScript, brings this feature to help catch type errors during development.
-
-Structural Typing: In this type system, types are based on the structure or properties of the data. JavaScript is a structurally typed language where objects are compatible if they share the same structure (i.e., the same set of properties and methods).
-
-Duck Typing: This is a concept where an object's suitability is determined by the presence of certain properties and methods, rather than by the actual type of the object. JavaScript relies heavily on duck typing, where behavior is inferred from an object's properties rather than its declared type.
-
-###
Articles
-
-- [What you need to know about Javascript's Implicit Coercion β Promise Tochi](https://dev.to/promhize/what-you-need-to-know-about-javascripts-implicit-coercion-e23)
-- [JavaScript Type Coercion Explained β Alexey Samoshkin](https://medium.freecodecamp.org/js-type-coercion-explained-27ba3d9a2839)
-- [Javascript Coercion Explained β Ben Garrison](https://hackernoon.com/javascript-coercion-explained-545c895213d3)
-- [What exactly is Type Coercion in Javascript? - Stack Overflow](https://stackoverflow.com/questions/19915688/what-exactly-is-type-coercion-in-javascript)
-
-###
Videos
-
-- [== ? === ??? ...#@^% - Shirmung Bielefeld](https://www.youtube.com/watch?v=qGyqzN0bjhc&t)
-- [Coercion in Javascript - Hitesh Choudhary](https://www.youtube.com/watch?v=b04Q_vyqEG8)
-- [JavaScript Questions: What is Coercion? - Steven Hancock](https://www.youtube.com/watch?v=z4-8wMSPJyI)
-- [Typing: Static vs Dynamic, Weak vs. Strong - Codexpanse](https://www.youtube.com/watch?v=C5fr0LZLMAs)
-- [EL SISTEMA de TIPOS DE JAVASCRIPT - La Cocina del CΓ³digo](https://www.youtube.com/watch?v=0ei4nb49GKo)
-- [Duck Typing in Javascript - Techmaker Studio](https://www.youtube.com/watch?v=oEpgyoMEkrM)
-- [Duck Typing in Javascript - Programming with Kartik](https://youtu.be/e4X1KAuk6Bs?si=krZKbsM2i3tmIl2G)
-
-### Books
-
-- [You Don't Know JS, 1st Edition: Types & Grammar β Kyle Simpson](https://github.com/getify/You-Dont-Know-JS/tree/1st-ed)
-
-**[β¬ Back to Top](#table-of-contents)**
-
----
-
-## 5. == vs === vs typeof
- According to the ECMAScript specification, JavaScript includes both strict (===) and loose (==) equality operators, which behave differently when comparing values. Here's a breakdown:
-
-== (Loose Equality): This operator performs type coercion before comparing two values. If the values are of different types, JavaScript will attempt to convert one or both values to a common type before comparison, which can lead to unexpected results.
-
-=== (Strict Equality): This operator compares both the value and the type without any type coercion. If the two values are not of the same type, the comparison will return false.
-
-typeof Operator: The typeof operator is used to check the data type of a variable. While it's generally reliable, there are certain quirks, like how typeof null returns "object" instead of "null", due to a long-standing behavior in JavaScript's implementation.
-
-###
Articles
-
-- [JavaScript Double Equals vs. Triple Equals β Brandon Morelli](https://codeburst.io/javascript-double-equals-vs-triple-equals-61d4ce5a121a)
-- [Should I use === or == equality comparison operator in JavaScript? β Panu Pitkamaki](https://bytearcher.com/articles/equality-comparison-operator-javascript/)
-- [Why Use the Triple-Equals Operator in JavaScript? β Louis Lazaris](https://www.impressivewebs.com/why-use-triple-equals-javascipt/)
-- [What is the difference between == and === in JavaScript? β Craig Buckler](https://www.oreilly.com/learning/what-is-the-difference-between-and-in-javascript)
-- [Why javascript's typeof always return "object"? β Stack Overflow](https://stackoverflow.com/questions/3787901/why-javascripts-typeof-always-return-object)
-- [Checking Types in Javascript β Toby Ho](http://tobyho.com/2011/01/28/checking-types-in-javascript/)
-- [How to better check data types in JavaScript β Webbjocke](https://webbjocke.com/javascript-check-data-types/)
-- [Checking for the Absence of a Value in JavaScript β Tomer Aberbach](https://tomeraberba.ch/html/post/checking-for-the-absence-of-a-value-in-javascript.html)
-- [Difference Between == and === in Javascript](https://www.scaler.com/topics/javascript/difference-between-double-equals-and-triple-equals-in-javascript/)
-- [Difference between == and === in JavaScript β GeeksforGeeks](https://www.geeksforgeeks.org/difference-between-double-equal-vs-triple-equal-javascript/)
-- [=== vs == Comparision in JavaScript β FreeCodeCamp](https://www.freecodecamp.org/news/javascript-triple-equals-sign-vs-double-equals-sign-comparison-operators-explained-with-examples/)
-
-###
Videos
-
-- [JavaScript - The typeof operator β Java Brains](https://www.youtube.com/watch?v=ol_su88I3kw)
-- [Javascript typeof operator β DevDelight](https://www.youtube.com/watch?v=qPYhTPt_SbQ)
-- [JavaScript "==" VS "===" β Web Dev Simplified](https://www.youtube.com/watch?v=C5ZVC4HHgIg)
-- [=== vs == in javascript - Hitesh Choudhary](https://www.youtube.com/watch?v=a0S1iG3TgP0)
-- [The typeof operator in JS - CodeVault](https://www.youtube.com/watch?v=NSS5WRcv7yM)
-
-**[β¬ Back to Top](#table-of-contents)**
-
----
-
-## 6. Function Scope, Block Scope and Lexical Scope
- The ECMAScript specification outlines three key types of scope:
-
-Function Scope: Variables declared within a function using var are only accessible within that function. This scope isolates variables from being accessed outside of the function where they are declared.
-
-Block Scope: Introduced with ES6, variables declared with let and const are block-scoped. This means they are only accessible within the specific block {} in which they are defined, such as inside loops or conditionals.
-
-Lexical Scope: Refers to how variable access is determined based on the physical location of the variables in the code. Functions are lexically scoped, meaning that they can access variables from their parent scope.
-
-### Books
-
-- [You Don't Know JS Yet, 2nd Edition: Scope & Closures β Kyle Simpson](https://github.com/getify/You-Dont-Know-JS/tree/2nd-ed/scope-closures)
-
-###
Articles
-
-- [JavaScript Functions β Understanding The Basics β Brandon Morelli](https://codeburst.io/javascript-functions-understanding-the-basics-207dbf42ed99)
-- [Var, Let, and Const β What's the Difference?](https://www.freecodecamp.org/news/var-let-and-const-whats-the-difference/)
-- [Functions in JavaScript - Deepa Pandey](https://www.scaler.com/topics/javascript/javascript-functions/)
-- [Emulating Block Scope in JavaScript β Josh Clanton](http://adripofjavascript.com/blog/drips/emulating-block-scope-in-javascript.html)
-- [The Difference Between Function and Block Scope in JavaScript β Joseph Cardillo](https://medium.com/@josephcardillo/the-difference-between-function-and-block-scope-in-javascript-4296b2322abe)
-- [Understanding Scope and Context in JavaScript β Ryan Morr](http://ryanmorr.com/understanding-scope-and-context-in-javascript/)
-- [JavaScript Scope and Closures β Zell Liew](https://css-tricks.com/javascript-scope-closures/)
-- [Understanding Scope in JavaScript β Wissam Abirached](https://developer.telerik.com/topics/web-development/understanding-scope-in-javascript/)
-- [Understanding Scope in JavaScript β Hammad Ahmed](https://scotch.io/tutorials/understanding-scope-in-javascript)
-- [When to use a function declaration vs. a function expression β Amber Wilkie](https://medium.freecodecamp.org/when-to-use-a-function-declarations-vs-a-function-expression-70f15152a0a0)
-- [A JavaScript Fundamentals Cheat Sheet: Scope, Context, and "this" β Alexandra Fren](https://dev.to/alexandrafren/a-javascript-fundamentals-cheat-sheet-scope-context-and-this-28ai)
-- [Functions / Function scope β MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Functions#function_scope)
-
-###
Videos
-
-- [What Makes Javascript Weird ... and Awesome pt. 4 β LearnCode.academy](https://www.youtube.com/watch?v=SBwoFkRjZvE)
-- [Variable Scope in JavaScript β Kirupa Chinnathambi](https://www.youtube.com/watch?v=dhp57T3p760)
-- [JavaScript Block Scope and Function Scope β mmtuts](https://www.youtube.com/watch?v=aK_nuUAdr8E)
-- [What the Heck is Lexical Scope? β NWCalvank](https://www.youtube.com/watch?v=GhNA0r10MmA)
-- [Variable Scope β Steve Griffith](https://www.youtube.com/watch?v=FyWdrCZZavQ)
-- [Javascript Tutorials for Beginners β Mosh Hemadani](https://www.youtube.com/watch?v=W6NZfCO5SIk)
-- [JavaScript Block scope vs Function scope - nivek](https://www.youtube.com/watch?v=IaTztAtoNEY)
-- [Lexical scoping in javascript - Hitesh Choudhary](https://www.youtube.com/watch?v=qT5S7GgIioE)
-- [Modern Scope Handling in JavaScript (ES6 and Beyond) -Prashant Dewangan ](https://www.youtube.com/watch?v=zMseUdOR7z8)
-
-**[β¬ Back to Top](#table-of-contents)**
-
----
-
-## 7. Expression vs Statement
-According to the ECMAScript specification, expressions produce a value, and statements are instructions to perform an action, such as variable assignment or control flow. Function declarations are hoisted and can be called before they are defined in the code, while function expressions are not hoisted and must be defined before being invoked.
-
-###
Articles
-
-- [All you need to know about Javascript's Expressions, Statements and Expression Statements β Promise Tochi](https://dev.to/promhize/javascript-in-depth-all-you-need-to-know-about-expressions-statements-and-expression-statements-5k2)
-- [Function Expressions vs Function Declarations β Paul Wilkins](https://www.sitepoint.com/function-expressions-vs-declarations/)
-- [JavaScript Function β Declaration vs Expression β Ravi Roshan](https://medium.com/@raviroshan.talk/javascript-function-declaration-vs-expression-f5873b8c7b38)
-- [Function Declarations vs. Function Expressions β Mandeep Singh](https://medium.com/@mandeep1012/function-declarations-vs-function-expressions-b43646042052)
-- [Function Declarations vs. Function Expressions β Anguls Croll](https://javascriptweblog.wordpress.com/2010/07/06/function-declarations-vs-function-expressions/)
-- [Expression statement β MDN web docs](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/Expression_statement)
-
-
-###
Videos
-
-- [Expressions vs. Statements in JavaScript β Hexlet](https://www.youtube.com/watch?v=WVyCrI1cHi8)
-- [JavaScript - Expression vs. Statement β WebTunings](https://www.youtube.com/watch?v=3jDpNGJkupA)
-- [Javascript Function Expression Vs Declaration For Beginners β Dev Material](https://www.youtube.com/watch?v=qz7Nq1tV7Io)
-- [The difference between an expression and a statement in JavaScript](https://youtu.be/eWTuFoBYiwg)
-- [Expression in javascript | Statement in javascript - Sathelli Srikanth](https://www.youtube.com/watch?v=cVDs3TZ-kXs)
-
-
-**[β¬ Back to Top](#table-of-contents)**
-
----
-
-## 8. IIFE, Modules and Namespaces
-With the introduction of ES6 modules, the role of IIFEs in scope isolation has diminished but they still remain relevant.
-### Reference
-
-- [IIFE β MDN](https://developer.mozilla.org/en-US/docs/Glossary/IIFE)
-- [Modularity β MDN](https://developer.mozilla.org/en-US/docs/Glossary/modularity)
-- [Namespace β MDN](https://developer.mozilla.org/en-US/docs/Glossary/Namespace)
-
-###
Articles
-
-- [Mastering Immediately-Invoked Function Expressions β Chandra Gundamaraju](https://medium.com/@vvkchandra/essential-javascript-mastering-immediately-invoked-function-expressions-67791338ddc6)
-- [JavaScript Immediately Invoked Function Expression β javascripttutorial.net](https://www.javascripttutorial.net/javascript-immediately-invoked-function-expression-iife/)
-- [A 10 minute primer to JavaScript modules, module formats, module loaders and module bundlers β Jurgen Van de Moere](https://www.jvandemo.com/a-10-minute-primer-to-javascript-modules-module-formats-module-loaders-and-module-bundlers/)
-- [Modules β Exploring JS](http://exploringjs.com/es6/ch_modules.html)
-- [Understanding ES6 Modules β Craig Buckler](https://www.sitepoint.com/understanding-es6-modules/)
-- [An overview of ES6 Modules in JavaScript β Brent Graham](https://blog.cloud66.com/an-overview-of-es6-modules-in-javascript/)
-- [ES6 Modules in Depth β NicolΓ‘s Bevacqua](https://ponyfoo.com/articles/es6-modules-in-depth)
-- [ES6 modules, Node.js and the Michael Jackson Solution β Alberto Gimeno](https://medium.com/dailyjs/es6-modules-node-js-and-the-michael-jackson-solution-828dc244b8b)
-- [JavaScript Modules: A Beginner's Guide β Preethi Kasireddy](https://medium.freecodecamp.org/javascript-modules-a-beginner-s-guide-783f7d7a5fcc)
-- [Using JavaScript modules on the web β Addy Osmani & Mathias Bynens](https://developers.google.com/web/fundamentals/primers/modules)
-- [IIFE: Immediately Invoked Function Expressions β Parwinder](https://dev.to/bhagatparwinder/iife-immediately-invoked-function-expressions-49c5)
-- [Javascript Module Bundlers β Vanshu Hassija](https://sassy-butter-197.notion.site/Javascript-bundlers-016932b17b0744e983c2cc0db31e6f02)
-
-###
Videos
-
-- [Immediately Invoked Function Expression - Beau teaches JavaScript β freeCodeCamp](https://www.youtube.com/watch?v=3cbiZV4H22c)
-- [Understanding JavaScript IIFE β Sheo Narayan](https://www.youtube.com/watch?v=I5EntfMeIIQ)
-- [JavaScript Modules: ES6 Import and Export β Kyle Robinson](https://www.youtube.com/watch?v=_3oSWwapPKQ)
-- [ES6 - Modules β Ryan Christiani](https://www.youtube.com/watch?v=aQr2bV1BPyE)
-- [ES6 Modules in the Real World β Sam Thorogood](https://www.youtube.com/watch?v=fIP4pjAqCtQ)
-- [ES6 Modules β TempleCoding](https://www.youtube.com/watch?v=5P04OK6KlXA)
-- [JavaScript IIFE (Immediately Invoked Function Expressions) β Steve Griffith](https://www.youtube.com/watch?v=Xd7zgPFwVX8&)
-
-**[β¬ Back to Top](#table-of-contents)**
-
----
-
-## 9. Message Queue and Event Loop
-The Event Loop is a critical part of JavaScript's concurrency model, ensuring non-blocking behavior by processing tasks in an asynchronous manner. Understanding how it interacts with the Message Queue and Microtasks is key to mastering JavaScript behavior.
-###
Articles
-
-- [JavaScript Event Loop Explained β Anoop Raveendran](https://medium.com/front-end-hacking/javascript-event-loop-explained-4cd26af121d4)
-- [Understanding JS: The Event Loop β Alexander Kondov](https://hackernoon.com/understanding-js-the-event-loop-959beae3ac40)
-- [The JavaScript Event Loop β Flavio Copes](https://flaviocopes.com/javascript-event-loop/)
-- [Tasks, microtasks, queues and schedules β Jake Archibald](https://jakearchibald.com/2015/tasks-microtasks-queues-and-schedules/)
-- [Visualising the JavaScript Event Loop with a Pizza Restaurant analogy β Priyansh Jain](https://dev.to/presto412/visualising-the-javascript-event-loop-with-a-pizza-restaurant-analogy-47a8)
-- [JavaScript Visualized: Event Loop β Lydia Hallie](https://dev.to/lydiahallie/javascript-visualized-event-loop-3dif)
-- [Understanding and Optimizing JavaScript's Event Loop β Xiuer Old](https://medium.com/javascript-zone/understanding-and-optimizing-javascripts-event-loop-717ae0095038#:~:text=The%20event%20loop%20is%20the,%2Dblocking%20I%2FO%20operations.)
-
-###
Videos
-
-- [What the heck is the event loop anyway? | JSConf EU β Philip Roberts](https://www.youtube.com/watch?v=8aGhZQkoFbQ)
-- [JavaScript Event Loop β ComScience Simplified](https://www.youtube.com/watch?v=XzXIMZMN9k4)
-- [I'm stuck in an Event Loop β Philip Roberts](https://www.youtube.com/watch?v=6MXRNXXgP_0)
-- [In The Loop - Jake Archibald | JSConf.Asia 2018](https://www.youtube.com/watch?v=cCOL7MC4Pl0)
-- [Desmitificando el Event Loop (Spanish)](https://www.youtube.com/watch?v=Eqq2Rb7LzYE)
-- [Callbacks, Sincrono, AssΓncrono e Event Loop (PT-BR)](https://www.youtube.com/watch?v=6lbBaM18X3g)
-- [JavaScript Event Loop: How it Works and Why it Matters in 5 Minutes - James Q Quick](https://www.youtube.com/watch?v=6lbBaM18X3g)
-
-**[β¬ Back to Top](#table-of-contents)**
-
----
-
-## 10. setTimeout, setInterval and requestAnimationFrame
-
-###
Articles
-
-- [setTimeout and setInterval β JavaScript.Info](https://javascript.info/settimeout-setinterval)
-- [Why not to use setInterval β Akanksha Sharma](https://dev.to/akanksha_9560/why-not-to-use-setinterval--2na9)
-- [setTimeout VS setInterval β Develoger](https://develoger.com/settimeout-vs-setinterval-cff85142555b)
-- [Using requestAnimationFrame β Chris Coyier](https://css-tricks.com/using-requestanimationframe/)
-- [Understanding JavaScript's requestAnimationFrame() β JavaScript Kit](http://www.javascriptkit.com/javatutors/requestanimationframe.shtml)
-- [Handling time intervals in JavaScript - Amit Merchant](https://www.amitmerchant.com/Handling-Time-Intervals-In-Javascript/)
-- [Debounce β How to Delay a Function in JavaScript - Ondrej Polesny](https://www.freecodecamp.org/news/javascript-debounce-example/)
-
-###
Videos
-
-- [Javascript: How setTimeout and setInterval works β Coding Blocks India](https://www.youtube.com/watch?v=6bPKyl8WYWI)
-- [TRUST ISSUES with setTimeout() β Akshay Saini ](https://youtu.be/nqsPmuicJJc?si=4FXKlZfqiJUqO2Y4)
-- [setTimeout and setInterval in JavaScript β techsith](https://www.youtube.com/watch?v=TbCgGWe8LN8)
-- [JavaScript Timers β Steve Griffith](https://www.youtube.com/watch?v=0VVJSvlUgtg)
-- [JavaScript setTimeOut and setInterval Explained β Theodore Anderson](https://www.youtube.com/watch?v=mVKfrWCOB60)
-
-**[β¬ Back to Top](#table-of-contents)**
-
----
-
-## 11. JavaScript Engines
-
-
-###
Articles
-
-- [JavaScript Engines β Jen Looper](http://www.softwaremag.com/javascript-engines/)
-- [Understanding How the Chrome V8 Engine Translates JavaScript into Machine Code β DroidHead](https://medium.freecodecamp.org/understanding-the-core-of-nodejs-the-powerful-chrome-v8-engine-79e7eb8af964)
-- [Understanding V8's Bytecode β Franziska Hinkelmann](https://medium.com/dailyjs/understanding-v8s-bytecode-317d46c94775)
-- [JavaScript essentials: why you should know how the engine works - Rainer Hahnekamp](https://www.freecodecamp.org/news/javascript-essentials-why-you-should-know-how-the-engine-works-c2cc0d321553)
-- [JavaScript engine fundamentals: Shapes and Inline Caches](https://mathiasbynens.be/notes/shapes-ics)
-- [JavaScript engine fundamentals: optimizing prototypes](https://mathiasbynens.be/notes/prototypes)
-- [How V8 optimizes array operations](https://v8.dev/blog/elements-kinds)
-- [JavaScript Internals: JavaScript engine, Run-time environment & setTimeout Web API β Rupesh Mishra](https://blog.bitsrc.io/javascript-internals-javascript-engine-run-time-environment-settimeout-web-api-eeed263b1617)
-
-###
Videos
-
-- [JavaScript Engines: The Good Partsβ’ β Mathias Bynens & Benedikt Meurer](https://www.youtube.com/watch?v=5nmpokoRaZI)
-- [JS Engine EXPOSED π₯ Google's V8 Architecture π | Namaste JavaScript Ep. 16 - Akshay Saini](https://www.youtube.com/watch?v=2WJL19wDH68)
-- [How JavaScript Code is executed? How Javascript works behind the scenes](https://youtu.be/iLWTnMzWtj4)
-- [Understanding the V8 JavaScript Engine - freeCodeCamp Talks](https://www.youtube.com/watch?v=xckH5s3UuX4)
-- [JavaScript Under The Hood - JavaScript Engine Overview - Traversy Media](https://www.youtube.com/watch?v=oc6faXVc54E)
-- [Arindam Paul - JavaScript VM internals, EventLoop, Async and ScopeChains](https://www.youtube.com/watch?v=QyUFheng6J0)
-
-**[β¬ Back to Top](#table-of-contents)**
-
----
-
-## 12. Bitwise Operators, Type Arrays and Array Buffers
-
-###
Articles
-
-- [Programming with JS: Bitwise Operations β Alexander Kondov](https://hackernoon.com/programming-with-js-bitwise-operations-393eb0745dc4)
-- [Using JavaScript's Bitwise Operators in Real Life β ian m](https://codeburst.io/using-javascript-bitwise-operators-in-real-life-f551a731ff5)
-- [JavaScript Bitwise Operators β w3resource](https://www.w3resource.com/javascript/operators/bitwise-operator.php)
-- [Bitwise Operators in Javascript β Joe Cha](https://medium.com/bother7-blog/bitwise-operators-in-javascript-65c4c69be0d3)
-- [A Comprehensive Primer on Binary Computation and Bitwise Operators in javascript β Paul Brown](https://medium.com/techtrument/a-comprehensive-primer-on-binary-computation-and-bitwise-operators-in-javascript-81acf8341f04)
-- [How can I understand Bitwise operation in JavaScript?](https://www.quora.com/How-can-I-understand-Bitwise-operation-in-JavaScript)
-
-###
Videos
-
-- [JavaScript Bitwise Operators β Programming with Mosh](https://www.youtube.com/watch?v=mesu75PTDC8)
-- [Bitwise Operators and WHY we use them β Alex Hyett](https://www.youtube.com/watch?v=igIjGxF2J-w)
-- [JS Bitwise Operators and Binary Numbers β Steve Griffith - Prof3ssorSt3v3](https://www.youtube.com/watch?v=RRyxCmLX_ag)
-- [Deep Dive into Blobs, Files, and ArrayBuffers β Steve Griffith - Prof3ssorSt3v3](https://www.youtube.com/watch?v=ScZZoHj7mqY)
-
-**[β¬ Back to Top](#table-of-contents)**
-
----
-
-## 13. DOM and Layout Trees
-
-### Reference
-
-- [Document Object Model (DOM) β MDN](https://developer.mozilla.org/en-US/docs/Web/API/Document_Object_Model)
-
-### Books
-
-- [Eloquent JavaScript, 3rd Edition: Ch. 14 - The Document Object Model](https://eloquentjavascript.net/14_dom.html)
-
-###
Articles
-
-- [How To Understand and Modify the DOM in JavaScript β Tania Rascia](https://www.digitalocean.com/community/tutorials/introduction-to-the-dom)
-- [What's the Document Object Model, and why you should know how to use it β Leonardo Maldonado](https://medium.freecodecamp.org/whats-the-document-object-model-and-why-you-should-know-how-to-use-it-1a2d0bc5429d)
-- [JavaScript DOM Tutorial with Example β Guru99](https://www.guru99.com/how-to-use-dom-and-events-in-javascript.html)
-- [What is the DOM? β Chris Coyier](https://css-tricks.com/dom/)
-- [Traversing the DOM with JavaScript β Zell Liew](https://zellwk.com/blog/dom-traversals/)
-- [DOM Tree](https://javascript.info/dom-nodes)
-- [How to traverse the DOM in Javascript β Vojislav GrujiΔ](https://medium.com/javascript-in-plain-english/how-to-traverse-the-dom-in-javascript-d6555c335b4e)
-- [Render Tree Construction β Ilya Grigorik](https://developers.google.com/web/fundamentals/performance/critical-rendering-path/render-tree-construction)
-- [What exactly is the DOM?](https://bitsofco.de/what-exactly-is-the-dom/)
-- [JavaScript DOM](https://www.javascripttutorial.net/javascript-dom/)
-- [Traversing the Dom with Javascript](https://www.youtube.com/watch?v=Pr4LLrmDLLo) - Steve Griffith (YouTube)
-
-###
Videos
-
-- [JavaScript DOM β The Net Ninja](https://www.youtube.com/watch?v=FIORjGvT0kk)
-- [JavaScript DOM Crash Course β Traversy Media](https://www.youtube.com/watch?v=0ik6X4DJKCc)
-- [JavaScript DOM Manipulation Methods β Web Dev Simplified](https://www.youtube.com/watch?v=y17RuWkWdn8)
-- [JavaScript DOM Traversal Methods β Web Dev Simplified](https://www.youtube.com/watch?v=v7rSSy8CaYE)
-
-**[β¬ Back to Top](#table-of-contents)**
-
----
-
-## 14. Factories and Classes
-
-###
Articles
-
-- [How To Use Classes in JavaScript β Tania Rascia](https://www.digitalocean.com/community/tutorials/understanding-classes-in-javascript)
-- [Javascript Classes β Under The Hood β Majid](https://medium.com/tech-tajawal/javascript-classes-under-the-hood-6b26d2667677)
-- [Better JavaScript with ES6, Pt. II: A Deep Dive into Classes β Peleke Sengstacke](https://scotch.io/tutorials/better-javascript-with-es6-pt-ii-a-deep-dive-into-classes)
-- [Understand the Factory Design Pattern in Plain JavaScript β Aditya Agarwal](https://medium.com/front-end-hacking/understand-the-factory-design-pattern-in-plain-javascript-20b348c832bd)
-- [Factory Functions in JavaScript β Josh Miller](https://atendesigngroup.com/blog/factory-functions-javascript)
-- [The Factory Pattern in JS ES6 β SnstsDev](https://medium.com/@SntsDev/the-factory-pattern-in-js-es6-78f0afad17e9)
-- [Class vs Factory function: exploring the way forward β Cristi Salcescu](https://medium.freecodecamp.org/class-vs-factory-function-exploring-the-way-forward-73258b6a8d15)
-- [How ES6 classes really work and how to build your own β Robert Grosse](https://medium.com/@robertgrosse/how-es6-classes-really-work-and-how-to-build-your-own-fd6085eb326a)
-- [Understanding `super` in JavaScript](https://jordankasper.com/understanding-super-in-javascript)
-- [An Easy Guide To Understanding Classes In JavaScript](https://dev.to/lawrence_eagles/an-easy-guide-to-understanding-classes-in-javascript-3bcm)
-
-###
Videos
-
-- [JavaScript Factory Functions β Programming with Mosh](https://www.youtube.com/watch?v=jpegXpQpb3o)
-- [Factory Functions in JavaScript β Fun Fun Function](https://www.youtube.com/watch?v=ImwrezYhw4w)
-- [Javascript Tutorial Function Factories β Crypto Chan](https://www.youtube.com/watch?v=R7-IwpH80UE)
-
-**[β¬ Back to Top](#table-of-contents)**
-
----
-
-## 15. this, call, apply and bind
-
-### Reference
-
-- [call() β MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function/call)
-- [bind() β MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_objects/Function/bind)
-- [apply() β MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function/apply)
-
-###
Articles
-
-- [Grokking call(), apply() and bind() methods in JavaScript β Aniket Kudale](https://levelup.gitconnected.com/grokking-call-apply-and-bind-methods-in-javascript-392351a4be8b)
-- [JavaScript's Apply, Call, and Bind Methods are Essential for JavaScript Professionals β Richard Bovell](http://javascriptissexy.com/javascript-apply-call-and-bind-methods-are-essential-for-javascript-professionals/)
-- [Javascript: call(), apply() and bind() β Omer Goldberg](https://medium.com/@omergoldberg/javascript-call-apply-and-bind-e5c27301f7bb)
-- [The difference between call / apply / bind β Ivan Sifrim](https://medium.com/@ivansifrim/the-differences-between-call-apply-bind-276724bb825b)
-- [What the hack is call, apply, bind in JavaScript β Ritik](https://dev.to/ritik_dev_js/what-the-hack-is-call-apply-bind-in-javascript-11ce)
-- [Mastering 'this' in JavaScript: Callbacks and bind(), apply(), call() β Michelle Gienow](https://thenewstack.io/mastering-javascript-callbacks-bind-apply-call/)
-- [JavaScript's apply, call, and bind explained by hosting a cookout β Kevin Kononenko](https://dev.to/kbk0125/javascripts-apply-call-and-bind-explained-by-hosting-a-cookout-32jo)
-- [How AND When to use bind, call, and apply in Javascript β Eigen X](https://www.eigenx.com/blog/https/mediumcom/eigen-x/how-and-when-to-use-bind-call-and-apply-in-javascript-77b6f42898fb)
-- [Let me explain to you what is `this`. (Javascript) β Jason Yu](https://dev.to/ycmjason/let-me-explain-to-you-what-is-this-javascript-44ja)
-- [Understanding the "this" Keyword in JavaScript β Pavan](https://medium.com/quick-code/understanding-the-this-keyword-in-javascript-cb76d4c7c5e8)
-- [How to understand the keyword this and context in JavaScript β Lukas Gisder-DubΓ©](https://medium.freecodecamp.org/how-to-understand-the-keyword-this-and-context-in-javascript-cd624c6b74b8)
-- [What the heck is this in Javascript? β Hridayesh Sharma](https://dev.to/_hridaysharma/what-the-heck-is-this-in-javascript-37n1)
-- [This and Bind In Javascript β Brian Barbour](https://dev.to/steelvoltage/this-and-bind-in-javascript-2pam)
-- [3 Techniques for Maintaining Your Sanity Using "This" in JavaScript β Carl](https://dev.to/canderson93/3-techniques-for-maintaining-your-sanity-using-this-in-javascript-3idf)
-- [Mastering the JavaScript "this" Keyword β Aakash Srivastav](https://dev.to/aakashsr/mastering-the-javascript-this-keyword-4pfa)
-- [This binding in JavaScript β 4. New binding β Spyros Argalias](https://dev.to/sargalias/this-binding-in-javascript-4-new-binding-2p1n)
-- [A quick intro to 'this' in JavaScript β Natalie Smith](https://dev.to/thatgalnatalie/a-quick-intro-to-this-in-javascript-2mhp)
-- [A conversation with the 'this' keyword in Javascript β Karen Efereyan](https://dev.to/developerkaren/a-conversation-with-the-this-keyword-in-javascript-3j6g)
-- [What are call(), apply() and bind() in JavaScript β Amitav Mishra](https://jscurious.com/what-are-call-apply-and-bind-in-javascript/)
-- [Understanding 'this' binding in JavaScript β Yasemin Cidem](https://yasemincidem.medium.com/understanding-this-binding-in-javascript-86687397c76d)
-- [Top 7 tricky questions of 'this' keyword](https://dmitripavlutin.com/javascript-this-interview-questions/)
-
-
-###
Videos
-
-- [JavaScript call, apply and bind β techsith](https://www.youtube.com/watch?v=c0mLRpw-9rI)
-- [JavaScript Practical Applications of Call, Apply and Bind functionsβ techsith](https://www.youtube.com/watch?v=AYVYxezrMWA)
-- [JavaScript (call, bind, apply) β curious aatma](https://www.youtube.com/watch?v=Uy0NOXLBraE)
-- [Understanding Functions and 'this' In The World of ES2017 β Bryan Hughes](https://www.youtube.com/watch?v=AOSYY1_np_4)
-- [bind and this - Object Creation in JavaScript - FunFunFunction](https://www.youtube.com/watch?v=GhbhD1HR5vk)
-- [JS Function Methods call(), apply(), and bind() β Steve Griffith](https://www.youtube.com/watch?v=uBdH0iB1VDM)
-- [call, apply and bind method in JavaScript](https://www.youtube.com/watch?v=75W8UPQ5l7k&t=261s)
-- .[Javascript Interview Questions ( Call, Bind and Apply ) - Polyfills, Output Based, Explicit Binding - Roadside Coder] (https://youtu.be/VkmUOktYDAU?si=SdvLZ8FBmephPxjS)
-
-**[β¬ Back to Top](#table-of-contents)**
-
----
-
-## 16. new, Constructor, instanceof and Instances
+
-###