Javascript有string.replace(...)
的重载,它带有正则表达式和回调函数,但是我很难找到关于这个特定过载的任何文档!
W3Schools.com没有提到这种超载。我还浏览了几十个Google搜索结果,但每个页面都会讨论string.replace(string, string)
或string.replace(RegExp, string)
。无法找到可靠的Javascript文档参考几乎令人尴尬!我的谷歌让我失望。
我最感兴趣的是了解回调函数的所有内容,例如输入参数和返回值。我也对任何可能的跨浏览器问题感兴趣。
答案 0 :(得分:4)
顺便说一句,它在the ECMAScript specification, duh 中指定。
如果replaceValue是一个函数,那么对于每个匹配的子字符串,调用 具有以下m + 3参数的函数。参数1是 匹配的子字符串。如果searchValue是正则表达式,则 接下来的m个参数是MatchResult中的所有捕获(参见 15.10.2.1)。参数m + 2是匹配发生的字符串中的偏移量,参数m + 3是字符串。结果是String值 通过替换每个匹配的子字符串从原始输入派生 与函数调用的相应返回值,转换为 如果需要,可以使用字符串。
答案 1 :(得分:1)
查看MDN(Mozilla开发者网络) - https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/String/replace
答案 2 :(得分:1)
Mozilla开发者网络拥有非常全面的Javascript文档。包括str.replace(regexp|substr, newSubStr|function[, Non-standard flags]);
。