JAvascript replaceAllの実装


JAvascriptのデフォルトはreplaceメソッドのみであり、一度だけ置き換えることができます.javaのreplaceAllの機能を実現するには、JavaScriptの文字列をメソッド拡張します.コードは次のとおりです.

String.prototype.replaceAll = function(reallyDo, replaceWith, ignoreCase) {
	    if (!RegExp.prototype.isPrototypeOf(reallyDo)) {
	        return this.replace(new RegExp(reallyDo, (ignoreCase ? "gi": "g")), replaceWith);
	    } else {
	        return this.replace(reallyDo, replaceWith);
	    }
}

テスト方法は次のとおりです.

function test(){
	var s="       !";
	alert(s.replaceAll(" "," "));
}
test();