我注意到没有直接的解决方案,但我至少可以想到两种方法来实现它。
我想知道什么是性能最佳的解决方案?
将字符串转换为数组,使用拼接,返回字符串
使用字符串s = s.substring(0,i)+ s.substring(i,s.lenght)
我错过的东西
答案 0 :(得分:1)
我在JSPERF上运行它,子串比拼接快一点!
编辑:
substring非常快,我的电脑运行了这个功能:
var str = "I love cookies"
str = str.substring(0, 1) + " really" + str.substring(1);
7553 333次,0.053秒!
答案 1 :(得分:0)
第二个函数的签名与Array.prototype.splice
方法相同。
function mutate(s) {
return function splice() {
var a = s.split('');
Array.prototype.splice.apply(a, arguments);
return a.join('');
};
}
mutate('101')(1, 1, '1');
希望这就是你要找的东西!