Skip to main content

Command Palette

Search for a command to run...

String Polyfills and Common Interview Methods in JavaScript

Updated
3 min read
String Polyfills and Common Interview Methods in JavaScript

What String Methods Are

String methods are built-in functions that help us work with strings.
In simple words: 👉 They are ready-made tools to manipulate text.
Examples:

let str = "hello world";

console.log(str.toUpperCase());   // HELLO WORLD
console.log(str.includes("world")); // true
console.log(str.slice(0, 5));     // hello

These methods make string handling easy.

Why Developers Write Polyfills

A polyfill is a custom implementation of a built-in method.

We write polyfills when:

  • a method is not supported in older browsers

  • we want to understand how it works internally

  • for interview preparation

In simple words: Polyfill = “apna version banana of a built-in method”

Implementing Simple String Utilities (Polyfills)

1. Polyfill for includes()

String.prototype.myIncludes = function(word) {
  return this.indexOf(word) !== -1;
};

let str = "hello world";

console.log(str.myIncludes("world")); // true

2. Polyfill for toUpperCase()

String.prototype.myToUpperCase = function() {
  let result = "";

  for (let i = 0; i < this.length; i++) {
    let char = this[i];

    if (char >= "a" && char <= "z") {
      result += String.fromCharCode(char.charCodeAt(0) - 32);
    } else {
      result += char;
    }
  }

  return result;
};

console.log("hello".myToUpperCase()); // HELLO

3. Polyfill for reverse()

String.prototype.myReverse = function() {
  let result = "";

  for (let i = this.length - 1; i >= 0; i--) {
    result += this[i];
  }

  return result;
};

console.log("hello".myReverse()); // olleh

Common Interview String Problems 🔥

1. Reverse a String

function reverse(str) {
  return str.split("").reverse().join("");
}

2. Check Palindrome

function isPalindrome(str) {
  let reversed = str.split("").reverse().join("");
  return str === reversed;
}

3. Count Characters

function countChars(str) {
  let map = {};

  for (let char of str) {
    map[char] = (map[char] || 0) + 1;
  }

  return map;
}

4. Find Longest Word

function longestWord(str) {
  let words = str.split(" ");
  let longest = "";

  for (let word of words) {
    if (word.length > longest.length) {
      longest = word;
    }
  }

  return longest;
}

Importance of Understanding Built-in Behavior

Most beginners just use methods, but don’t understand them.

Interviews test:

  • how methods work internally

  • edge cases

  • logic building

Example:

  • How includes() works?

  • How slice() handles negative values?

  • How split() works internally?

That’s why polyfills are important.

Final Summary

  • String methods = built-in tools for strings

  • Polyfills = custom implementations

  • Important for interviews and deep understanding

Must-know concepts:

  • reverse string

  • palindrome

  • character count

  • string manipulation

String Polyfills and Common Interview Methods in JavaScript