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 January 2020.

Thuộc tính dữ liệu tĩnh Symbol.matchAll đại diện cho well-known symbol Symbol.matchAll. Phương thức String.prototype.matchAll() tra cứu symbol này trên đối số đầu tiên của nó cho phương thức trả về một iterator, cung cấp các kết quả khớp của đối tượng hiện tại với một chuỗi.

Để biết thêm thông tin, xem RegExp.prototype[Symbol.matchAll]()String.prototype.matchAll().

Try it

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"]

Giá trị

Well-known symbol Symbol.matchAll.

Property attributes of Symbol.matchAll
Writableno
Enumerableno
Configurableno

Ví dụ

Sử dụng 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"]

Đặc tả

Specification
ECMAScript® 2027 Language Specification
# sec-symbol.matchall

Tương thích trình duyệt

Xem thêm