Primitive and Non Primitive
The two families of JavaScript types β primitives copied by value, objects shared by reference β and why the difference matters everywhere.
Pass by value and pass by reference
What actually happens when you pass variables to functions β why primitives stay unchanged while objects mutate, with examples.
Normal Copy vs Shallow Copy vs Deep Copy
Normal Copy is a copy of an object that creates a new object in memory and stores the same values as the original object. Shallow Copy is a copy of an object that creates a new object in memory and stores the same values as the original object. Deep Copy is a copy of an object that creates a new object in memory and stores the same values as the original object.
String Methods
A practical reference to JavaScript's most useful string methods β searching, transforming, splitting, and formatting strings.
Number Methods
A practical reference to JavaScript's number methods β parsing, formatting, checking, and converting numeric values.
Data Manipulation in Array
Add, remove, sort, and transform array data with forEach, map, filter, find, reduce, every, and some.
Data Manipulation in Object
Introduction to Data Manipulation in Object, Object.keys, Object.values, Object.entries, Object.fromEntries, Object.assign, Object.getOwnPropertyDescriptors, Object.defineProperties, Object.seal, Object.freeze, Object.preventExtensions, Object.isSealed, Object.isFrozen, Object.isExtensible, Object.getOwnPropertyDescriptor, Object.defineProperty, Object.getOwnPropertyNames, Object.getPrototypeOf, Object.setPrototypeOf, Object.create, Object.prototype.hasOwnProperty, Object.prototype.propertyIsEnumerable, Object.prototype.isPrototypeOf, Object.prototype.toString, Object.prototype.toLocaleString, Object.prototype.valueOf, Object.prototype.__proto__
Destructuring Objects and Arrays
Destructuring is a way to extract data from an object or array and assign it to a variable.
Modern ES6+ Features
Master the most useful modern JavaScript features β spread/rest, optional chaining, nullish coalescing, Map, Set, and more.
Exporting and Importing Modules
Imports and exports allow us to share code between different files and modules in an application. It helps in making the code more organized, maintainable, and reusable.
Hoisting
Hoisting is a JavaScript mechanism where variables and function declarations are moved to the top of their scope before code execution. In this article, we will learn about hoisting in JavaScript.
Closures
Closure function gives you access to an outer functionβs scope from an inner function. In JavaScript, closures are created every time a function is created, at function creation time.
Callback Functions
A function that is passed to another function as an argument, which is then invoked inside the outer function to complete some kind of routine or action.
Asynchronous Code
Async in single-threaded JavaScript β callbacks, promises, async/await, timers, and advanced patterns.
Exception Handling
Exception handling is the process of handling errors and unexpected situations in a program. In JavaScript, exceptions are thrown when an error occurs or when a certain condition is not met.
Classes and Object-Oriented Programming
Learn JavaScript classes, constructors, inheritance, and object-oriented programming patterns. Understand prototypes, static methods, and modern ES6 class syntax.
Regular Expressions
Master JavaScript regular expressions. Learn pattern matching, flags, methods, and practical use cases for text validation and manipulation.
Memory Management
Memory management means the process of allocating and releasing memory. In JavaScript, the engine handles this for us. In this article, I'll introduce you to how memory allocation and garbage collection works and how you can avoid some common memory leaks.
JavaScript Runtime Architecture
Event loop is the core of JavaScript, it is the reason why JavaScript is asynchronous and non-blocking. This article will explain the event loop, call stack, callback queue, etc.
File System Module
A comprehensive guide to using the `fs` module in Node.js, covering reading, writing, and manipulating files, working with directories, and handling JSON files.