将字符串中的子字符串替换为JavaScript中的范围

Jac*_*ill 6 javascript string replace

如何在给定起始位置和长度的情况下替换字符串的子字符串?

我希望这样的事情:

var string = "This is a test string";
string.replace(10, 4, "replacement");
Run Code Online (Sandbox Code Playgroud)

这样string就相等了

"this is a replacement string"
Run Code Online (Sandbox Code Playgroud)

..但我找不到那样的东西.

任何帮助赞赏.

Nie*_*sol 8

像这样:

var outstr = instr.substr(0,start)+"replacement"+instr.substr(start+length);
Run Code Online (Sandbox Code Playgroud)

您可以将其添加到字符串的原型中:

String.prototype.splice = function(start,length,replacement) {
    return this.substr(0,start)+replacement+this.substr(start+length);
}
Run Code Online (Sandbox Code Playgroud)

(我称之为splice因为它与同名的Array函数非常相似)