JavaScript | Symbol.search 属性
JavaScript 中的Symbol.search属性是一个众所周知的符号,它决定了返回与正则表达式匹配的字符串中的索引的方法。该函数由String.prototype.search()方法调用。
句法:
[Symbol.search](string)
参数:它接受单个参数“字符串”。
返回值:这将返回匹配的字符串的位置,如果不匹配,则返回-1 。
下面的示例说明了 JavaScript 中的 Symbol.search 属性:
示例 1:
// JavaScript example to illustrate
// Symbol.search property
class obj {
constructor(value) {
this.value = value;
}
[Symbol.search](string) {
return string.indexOf(this.value);
}
}
console.log('Geeksforgeeks'.search(new obj('Geek')));
console.log('Geeksforgeeks'.search(new obj('geek')));
输出:
> 0
> 8
示例 2:
// JavaScript program to illustrate
// the Symbol.search property
class S {
constructor(value) {
this.value = value;
}
[Symbol.search](string) {
return string.indexOf(this.value);
}
}
console.log('GEEKSFORGEEKS'.search(new S('geek')));
console.log('GEEKSFORGEEKS'.search(new S('Geek')));
输出:
-1
-1
支持的浏览器: Symbol.search 属性支持的浏览器如下:
- 谷歌浏览器 50 及以上
- 火狐 49 及以上
- Edge 79 及以上
- Opera 37 及以上
- 苹果 Safari 10 及更高版本
参考: https://devdocs.io/javascript/global_objects/symbol/search