Symbol.matchAll 内置通用(well-known)符号指定方法返回一个迭代器,该迭代器根据字符串生成正则表达式的匹配项。此函数可以被 String.prototype.matchAll() 方法调用。

详细信息请参阅 RegExp.prototype[Symbol.matchAll]()String.prototype.matchAll()

{{InteractiveExample("JavaScript Demo: Symbol.matchAll")}}

```js interactive-example const re = /[0-9]+/g; const str = "2016-01-02|2019-03-07"; const result = reSymbol.matchAll;

console.log(Array.from(result, (x) => x[0])); // Expected output: Array ["2016", "01", "02", "2019", "03", "07"]


## 值 内置通用符号 `Symbol.matchAll`。 {{js_property_attributes(0, 0, 0)}} ## 示例 ### 使用 Symbol.matchAll ```js const str = "2016-01-02|2019-03-07"; const numbers = { *[Symbol.matchAll](str) { for (const n of str.matchAll(/[0-9]+/g)) yield n[0]; }, }; console.log(Array.from(str.matchAll(numbers))); // ["2016", "01", "02", "2019", "03", "07"]