Symbol.matchAll
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2015.
The Symbol.matchAll
static data property represents the well-known symbol Symbol.matchAll
. The 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 String.prototype.matchAll()
.
Try it
Value
The well-known symbol Symbol.matchAll
.
Property attributes of Symbol.matchAll | |
---|---|
Writable | no |
Enumerable | no |
Configurable | no |
Examples
Using 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"]
Specifications
Specification |
---|
ECMAScript Language Specification # sec-symbol.matchall |
Browser compatibility
BCD tables only load in the browser