
Understanding prototype.apply() in JavaScript
Understand Function.prototype.apply() in JavaScript, including this binding, array‑like arguments, call() differences, dynamic invocation, and modern use cases.
Articles
JavaScript is the working language behind most of my front‑end writing, from small browser behaviours to application state and asynchronous code. These articles favour the mechanism behind a feature over a clever trick, whether the subject is callbacks, async code, or a language edge that only becomes obvious in production.

prototype.apply() in JavaScriptUnderstand Function.prototype.apply() in JavaScript, including this binding, array‑like arguments, call() differences, dynamic invocation, and modern use cases.

Explore the 'Longest Palindromic Substring' problem: its relevance in web development and four JavaScript (ES6 & TypeScript) solutions for efficiency.

Master the 4Sum problem in JavaScript: Explore the two‑pointer technique, solve with ES6/TypeScript, and test using Cypress. Elevate your coding skills.

Why old jQuery plugins became front‑end debt, from hidden state and global CSS to accessibility gaps, browser assumptions, migration cost, and ownership.

hasOwnProperty() MethodUnderstand JavaScript's hasOwnProperty(), Object.hasOwn(), and the in operator, including the difference between own and inherited object properties.

Solve 3Sum Closest in JavaScript with sorting and two pointers, reducing brute‑force work whilst finding the nearest total efficiently in TypeScript.

Deduping an array involves removing duplicate values to ensure each item appears only once. Here, I explore different JavaScript techniques to achieve this.

Solve LeetCode Add Two Numbers in TypeScript with linked‑list traversal, carry handling, edge cases, and a clear implementation you can test and extend.

Solve the 3Sum problem in JavaScript with sorting, two pointers, duplicate skipping, Jest coverage, edge cases, and a clear TypeScript implementation.

typeof Operator: Uses and LimitationsExplore the usage and limitations of JavaScript's typeof operator, understand its quirks, and learn when and how to use it effectively in your code.

I am not a fan of carousels, although I have built many in my career. Here, I discuss why they hinder UX and SEO, and explore alternatives for engaging content.

Falsy and nullish values are not the same in JavaScript. This guide clears up the difference and shows why 0 and empty strings often trip people up.

parseInt in JavaScript: The Significance of RadixLearn why parseInt()'s radix argument matters in JavaScript, how numeric bases affect parsing and why specifying the base makes conversion predictable.

Solve Longest Substring Without Repeating Characters in JavaScript with a sliding window, unique‑character tracking, and substring return variants.

A simple solution to solve the Valid Palindrome problem in JavaScript using the two‑pointer approach in ES6 and TypeScript, checking alphanumeric characters.

Function.prototype.bind()Explore JavaScript's Function.prototype.bind() method to master function contexts and argument handling, enhancing your code's flexibility and reliability.

defineProperty()Unlock the capabilities of JavaScript's Object.defineProperty() for precise property control on objects, enhancing security and data integrity in your code.

atoi): Decoding Strings in JavaScriptConvert strings to integers in JavaScript, covering trimming, signs, invalid input, overflow‑style constraints, and a TypeScript implementation.