Symbol.matchAll
Baseline
Weitgehend verfügbar
Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit Januar 2020 browserübergreifend verfügbar.
Die statische Dateneigenschaft Symbol.matchAll repräsentiert das bekannte Symbol Symbol.matchAll. Die Methode String.prototype.matchAll() sucht auf ihrem ersten Argument nach diesem Symbol, um eine Methode zu finden, die einen Iterator zurückgibt. Dieser liefert Übereinstimmungen des aktuellen Objekts mit einer Zeichenfolge.
Weitere Informationen finden Sie unter RegExp.prototype[Symbol.matchAll]() und String.prototype.matchAll().
Probieren Sie es aus
const re = /\d+/g;
const str = "2016-01-02|2019-03-07";
const result = re[Symbol.matchAll](str);
console.log(Array.from(result, (x) => x[0]));
// Expected output: Array ["2016", "01", "02", "2019", "03", "07"]
Wert
Das bekannte Symbol Symbol.matchAll.
Eigenschaften von Symbol.matchAll | |
|---|---|
| Schreibbar | nein |
| Aufzählbar | nein |
| Konfigurierbar | nein |
Beispiele
>Symbol.matchAll verwenden
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"]
Spezifikationen
| Spezifikation |
|---|
| ECMAScript® 2027 Language Specification> # sec-symbol.matchall> |