JavaScript Function to Find the Longest Common Prefix
Posted on July 20, 2015 in Algorithms, JavaScript by Matt Jennings

In a JavaScript array, find the longest common prefix of all array elements.

function longestCommonPrefix(arr){
    // sort() method arranges array elements alphabetically
    var sortArr = arr.sort();
    // Get first array element    
    var arrFirstElem = arr[0];
    // Get the last array element length minus one
    var arrLastElem = sortArr[sortArr.length - 1]; 
    // Get first array element length
    var arrFirstElemLength = arrFirstElem.length; 
    // Set "i" incrementer to 0
    var i= 0;
    // while "i" is less than the length of the first array element AND
    // the first array element character position matches the last array character position
    // increment "i" by one
    while(i < arrFirstElemLength && arrFirstElem.charAt(i) === arrLastElem.charAt(i)) {
    // Console log the substring of the first element of the array starting with
    // index zero and going all the way to just below index "i"
    console.log(arrFirstElem.substring(0, i));

var x = ["internetly", "internet", "internets"];
var y = ["a", "c", "b"];

// Output for line below is:
// "internet"

// Output for line below is:
// ""

Leave a Reply

To Top ↑