JavaScript 字符串是不可变的,这意味着它们在创建后无法更改。
因此,我们应该创建一个带有替换字符的新字符串。
这里有两种方法。
split() 和 join() 方法
split() 方法将字符串切割成子字符串,将它们放入一个数组中,然后返回它。
除法是通过搜索作为方法调用中的第一个参数提供的模式来实现的。
调用join()方法来反转split.substring()方法
substring() 方法返回开始索引和结束索引之间的字符串部分,或者返回到字符串的结尾。
它将子字符串从指定的起始索引提取到另一个索引,用于提取字符串中不包括应该替换的字符的部分。
split() 和 join()
第一种方法是 split 和 join ,它将字符串转换为数组并替换指定索引处的字符。
通过使用 split() 将字符串转换为数组,分隔符为空白字符 ("")。
然后可以将替换的字符分配给数组的相应索引。
然后,我们可以使用 join() 方法将分隔符作为空白字符 ("") 将数组粘合到一个字符串中,这将创建一个新字符串,该字符串在索引处替换字符。
String.prototype.replaceAt = function (index, char) { let a = this.split(""); a[index] = char; return a.join(""); } let str = "Welcome onitroad"; str = str.replaceAt(7, "_"); console.log(str);
substring()
我们还可以在 substring() 方法的帮助下处理任务。
首先,我们应该使用起始索引参数作为“0”和长度参数作为“索引”来提取字符串,其中必须替换字符。
然后应该通过使用起始索引参数作为'index + 1'来提取字符串,表示字符索引之后的字符串部分。
跳过第二个参数以检索其后的整个字符串。
创建的新字符串将字符串的两个部分与中间添加的要替换的字符组合在一起。
结果,创建了一个新字符串,并在索引处替换了字符:
String.prototype.replaceAt = function (index, replacement) { if (index >= this.length) { return this.valueOf(); } return this.substring(0, index) + replacement + this.substring(index + 1); } let str = "Welcome onitroad"; str = str.replaceAt(7, '-'); console.log(str);
日期:2020-06-02 22:16:25 来源:oir作者:oir