RegExp.rightContext ($')
已弃用:此特性不再推荐。虽然某些浏览器可能仍然支持它,但它可能已经从相关的网络标准中删除,可能正在删除过程中,或者可能仅为兼容性目的而保留。请避免使用它,如果可能,请更新现有代码;请参阅本页底部的兼容性表格以指导您的决策。请注意,此特性可能随时停止工作。
注意:所有暴露全局最后匹配状态的 RegExp 静态属性都已弃用。有关更多信息,请参阅 已弃用的 RegExp 功能。
RegExp.rightContext 静态访问器属性返回最近一次匹配之后的部分。RegExp["$'"] 是此属性的别名。
描述
由于 rightContext 是 RegExp 的静态属性,因此您始终使用 RegExp.rightContext 或 RegExp["$'"] 来访问它,而不是作为您创建的 RegExp 对象的一个属性。
每当一个 RegExp(但不是 RegExp 子类)实例成功匹配时,rightContext 的值就会更新。如果没有进行任何匹配,rightContext 为空字符串。rightContext 的 set 访问器是 undefined,因此您无法直接更改此属性。
您不能使用点属性访问器(RegExp.$')来使用简写别名,因为 ' 不是一个有效的标识符部分,这会导致 SyntaxError。请改用方括号表示法。
$' 也可以在 String.prototype.replace() 的替换字符串中使用,但这与 RegExp["$'"] 遗留属性无关。
示例
使用 rightContext 和 $
js
const re = /hello/g;
re.test("hello world!");
RegExp.rightContext; // " world!"
RegExp["$'"]; // " world!"
规范
| 规范 |
|---|
| 旧的 RegExp 功能 # RegExp 构造函数的附加属性 |
浏览器兼容性
加载中…