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 September 2015.

Symbol.search 정적 데이터 속성은 잘 알려진 심볼 Symbol.search입니다. String.prototype.search() 메서드는 현재 객체와 일치하는 문자열 내의 인덱스를 반환하는 메서드의 첫 번째 인수에서 이 심볼을 찾습니다.

자세한 내용은 RegExp.prototype[Symbol.search]()String.prototype.search()을 참고하세요.

시도해보기

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

잘 알려진 심볼 Symbol.search.

Property attributes of Symbol.search
쓰기 가능불가능
열거 가능불가능
설정 가능불가능

예제

고유의 문자열 검색

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

명세서

Specification
ECMAScript® 2025 Language Specification
# sec-symbol.search

브라우저 호환성

Report problems with this compatibility data on GitHub
desktopmobileserver
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
Deno
Node.js
search

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support

같이 보기