让我们假设我想用'b'替换字符串中的所有'a'
'abc' - > 'BBC'
我想在各种字符串上运行它:
var str1= 'abc'
var str2= 'adf'
var str3= 'abvxvb'
var str4= 'ae54'
我正在尝试编写一个执行此操作的jquery插件。
所以我可以做str1.a_to_b();
并获得所需的结果。 (实际上,使用另一种形式的语法也很好。)
我尝试的语法有问题:
jQuery.fn.a_to_b = function(expr) {
return this.each(function() {
this = this
.replace(/a/ig, "b");
});
};
感谢。
答案 0 :(得分:4)
jQuery方法(附加到jQuery.fn)使用html元素,而不是字符串。你想要一个静态函数(你附加到jQuery本身)
jQuery.aToB = function(str) {
return str.replace(/a/g, "b");
}
alert($.aToB("abc"))
或者你可以扩展String.prototype(不推荐,因为这是一个潜在的冲突源)
String.prototype.toB = function() {
return this.replace(/a/g, "b");
}
alert("abc".toB())
答案 1 :(得分:0)
使用不同的sintax,也许你可以使用以下
jQuery.a_to_b = function(str) {
return str.replace(/a/ig, "b");
};
然后你可以打电话
var str1= 'abc';
str1 = jQuery.a_to_b(str1);
你将把新值存储在str1
中