Symbol.search

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.search đại diện cho well-known symbol Symbol.search. Phương thức String.prototype.search() tra cứu symbol này trên đối số đầu tiên của nó cho phương thức trả về chỉ mục trong chuỗi khớp với đối tượng hiện tại.

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

Try it

class Search1 {
  constructor(value) {
    this.value = value;
  }
  [Symbol.search](string) {
    return string.indexOf(this.value);
  }
}

console.log("foobar".search(new Search1("bar")));
// Expected output: 3

Giá trị

Well-known symbol Symbol.search.

Property attributes of Symbol.search
Writableno
Enumerableno
Configurableno

Ví dụ

Tìm kiếm chuỗi tùy chỉnh

js
class CaseInsensitiveSearch {
  constructor(value) {
    this.value = value.toLowerCase();
  }
  [Symbol.search](string) {
    return string.toLowerCase().indexOf(this.value);
  }
}

console.log("foobar".search(new CaseInsensitiveSearch("BaR"))); // 3

Đặc tả

Thông số kỹ thuật
ECMAScript® 2027 Language Specification
# sec-symbol.search

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

Xem thêm