How to Replace Last Character of String in Javascript
In this tutorial, you will learn how to replace last character of string in javascript. A string is built using multiple characters and these characters can be letters, numbers, or special characters. It can also be a combination of letters, numbers, and special characters.
There are numerous ways to replace the last character of the string. We are going to create a custom function that involves the usage of split()
, join()
, and reverse()
methods as well as for
loop to loop through all characters. Later, we will use replace()
method to replace the last character with an exclamation mark (!
).
In the following example, we have one global variable that holds a string. Upon click of a button, we will replace the last character of the string and display the result on the screen. Please have a look over the code example and the steps given below.
HTML & CSS
- We have 3 elements in the HTML file (
div
,button
, andh1
). Thediv
element is just a wrapper for the rest of the elements. - The
innerText
for thebutton
element is“Get”
and for theh1
element, it is“Result”
. - We have done some basic styling using CSS and added the link to our
style.css
stylesheet inside thehead
element. - We have also included our javascript file
script.js
with ascript
tag at the bottom.
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <link rel="stylesheet" href="style.css"> <title>Document</title> </head> <body> <div class="container"> <button>Get</button> <h1>Result</h1> </div> <script src="script.js"></script> </body> </html>
.container { text-align: center; } button { margin-top: 10px; padding: 10px 20px; }
Javascript
- We have selected the
button
element andh1
element using thedocument.querySelector()
method and stored them inbtnGet
andoutput
variables respectively. - We have attached a
click
event listener to thebutton
element. - We have a global variable
myString
which holds a string as its value. - In the event handler function, we are calling the
replaceCharacters()
method and passingmyString
and 1 as parameters. This method will be responsible for replacing the last character and returning the new string. - In the
replaceCharacters()
method, we are calling thereverseString()
method and passingstr
as a parameter. This method will reverse the string and return it. - We are using
for
loop to loop through all the characters in the string. Inside the loop, we are usingreplace()
method to replace the last character with an exclamation mark (!
). - The final string is stored in the
newStr
variable. - We are getting out of the loop using the
break
statement after replacing the last character. - The returned string is stored in the
result
variable and we are displaying theresult
in theh1
element using theinnerText
property.
let btnGet = document.querySelector("button"); let output = document.querySelector("h1"); let myString = "Hello world"; btnGet.addEventListener("click", () => { let result = replaceCharacters(myString, 1); output.innerText = result; }); function replaceCharacters(str, num) { str = reverseString(str); let newStr = str; let count = 0; for (const char of str) { newStr = newStr.replace(char, "!"); count++; if (count == num) { newStr = reverseString(newStr); break; } } return newStr; } function reverseString(str) { return str.split("").reverse().join(""); }