String.prototype.replace 在使用 RegExp 断言 ?= 时工作不正常
作者: YLeight创建于 2016年10月13日更新于 2016年10月17日
标签noncompliant ES5
在使用具有 ?= 断言的正则表达式时,装饰原始 replaceValue 函数的 wrappedReplaceValue 无法定义正确的参数,因为传递给 replaceValue 函数的匹配项不符合 RegExp 模式,最终参数只包含两个值 - 在被检查的整个字符串中匹配子字符串的偏移量,以及被检查的整个字符串。在整个 RegExp 不匹配找到的匹配项时,会出现一定的问题,但实际上存在一个匹配项 StringPrototype.replace polyfill。
内容来源: es-shims/es5-shim