How do I replace a character at a particular index in JavaScript?
In JavaScript, strings are immutable, which means the best you can do is to create a new string with the changed content and assign the variable to point to it.
You'll need to define the replaceAt()
function yourself:
String.prototype.replaceAt = function(index, replacement) { return this.substr(0, index) + replacement + this.substr(index + replacement.length);}
And use it like this:
var hello = "Hello World";alert(hello.replaceAt(2, "!!")); // He!!o World
There is no replaceAt
function in JavaScript. You can use the following code to replace any character in any string at specified position:
function rep() { var str = 'Hello World'; str = setCharAt(str,4,'a'); alert(str);}function setCharAt(str,index,chr) { if(index > str.length-1) return str; return str.substring(0,index) + chr + str.substring(index+1);}
<button onclick="rep();">click</button>
You can't. Take the characters before and after the position and concat into a new string:
var s = "Hello world";var index = 3;s = s.substring(0, index) + 'x' + s.substring(index + 1);