📜  JavaScript | Symbol.search 属性

📅  最后修改于: 2022-05-13 01:56:18.922000             🧑  作者: Mango

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