how to get the last character of a string?

How to get the last character of the string:


The last character of this string is "."

How can I find this?

32 thoughts on “how to get the last character of a string?”

  1. Use the JavaScript charAt function to get a character at a given 0-indexed position. Use length to find out how long the String is. You want the last character so that’s length – 1.

    var word = "";
    var last = word.charAt(word.length - 1);
    alert('The last character is:' + last);
  2. Use charAt:

    The charAt() method returns the character at the specified index in a string.

    You can use this method in conjunction with the length property of a string to get the last character in that string.
    For example:

    const myString = "";
    const stringLength = myString.length; // this will be 16
    console.log('lastChar: ', myString.charAt(stringLength - 1)); // this will be the string
  3. Use substr with parameter -1:


    equals “.”


    To extract characters from the end of the string, use a negative start number (This does not work in IE 8 and earlier).

  4. You can use this simple ES6 method

    const lastChar = (str) => str.split('').reverse().join(',').replace(',', '')[str.length === str.length + 1 ? 1 : 0];
    // example

    This will work in every browsers.

  5. You can achieve this using different ways but with different performance,

    1. Using bracket notation:

    var str = "Test";
    var lastLetter = str[str.length - 1];

    But it’s not recommended to use brackets. Check the reasons here

    2. charAt[index]:

    var lastLetter = str.charAt(str.length - 1)

    This is readable and fastest among others. It is most recommended way.

    3. substring:

    str.substring(str.length - 1);

    4. slice:


    It’s slightly faster than substring.

    You can check the performance here

    With ES6:

    You can use str.endsWith("t");

    But it is not supported in IE. Check more details about endsWith here

  6. You can use the following. In this case of last character it’s an overkill but for a substring, its useful:

    var word = "";
    var last = ".com.";
    if (word.substr(-(last.length)) == last)
    alert("its a match");
  7. If you have or are already using lodash, use last instead:


    Not only is it more concise and obvious than the vanilla JS, it also safer since it avoids Uncaught TypeError: Cannot read property X of undefined when the input is null or undefined so you don’t need to check this beforehand:

    // Will throws Uncaught TypeError if str is null or undefined
    str.slice(-1); // 
    str.charAt(str.length -1);
    // Returns undefined when str is null or undefined

Leave a Comment