Symbol.matchAll
En esta página
The Symbol.matchAll static data property represents the well-known symbol Symbol.matchAll. The {{jsxref("String.prototype.matchAll()")}} method looks up this symbol on its first argument for the method that returns an iterator, that yields matches of the current object against a string.
For more information, see RegExp.prototype[Symbol.matchAll]() and {{jsxref("String.prototype.matchAll()")}}.
{{InteractiveExample("JavaScript Demo: Symbol.matchAll")}}
```js interactive-example const re = /\d+/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"]
## Value
The well-known symbol `Symbol.matchAll`.
{{js_property_attributes(0, 0, 0)}}
## Examples
### Using Symbol.matchAll
```js
const str = "2016-01-02|2019-03-07";
const numbers = {
*[Symbol.matchAll](str) {
for (const n of str.matchAll(/\d+/g)) yield n[0];
},
};
console.log(Array.from(str.matchAll(numbers)));
// ["2016", "01", "02", "2019", "03", "07"]
Specifications#
{{Specifications}}
Browser compatibility#
{{Compat}}
See also#
- Polyfill of
Symbol.matchAllincore-js - es-shims polyfill of
Symbol.matchAll - {{jsxref("Symbol.match")}}
- {{jsxref("Symbol.replace")}}
- {{jsxref("Symbol.search")}}
- {{jsxref("Symbol.split")}}
- {{jsxref("String.prototype.matchAll()")}}
RegExp.prototype[Symbol.matchAll]()