我想将splice
方法添加到String,其行为与Array的splice
方法完全相同。问题是splice
修改"这个"对象并返回已删除的元素。后者没有问题,但如何写出这个"这个"被修改了吗?
if (typeof String.prototype.splice != 'function') {
String.prototype.splice = function (index,count,add) {
var removed = this.slice(index,index+count);
this = this.slice(0, index) + (add || '') + this.slice(index + count); // (*)
return removed;
};
}
我不能这样写。那么如何修改"这个"对象
答案 0 :(得分:4)
这是不可能的 - 除了在构造函数中,它不可能分配给this
,String
类型不提供任何就地修改字符串的函数。