当前位置: 首页>>代码示例>>用法及示例精选>>正文


Javascript Symbol.for()用法及代码示例

Symbol.for()是JavaScript中的内置函数,用于将给定符号搜索到runtime-wide符号注册表中,如果找到该符号,则返回相同符号,否则将在全局变量中创建与该符号相同名称的新符号符号注册表并返回它们。

用法:

Symbol.for(key);

“Symbol”是要在runtime-wide符号注册表中搜索的符号。


参数:该函数接受参数“key”,该参数是符号的键,用于描述符号。

返回值:此函数返回在runtime-wide符号注册表中找到的给定符号,否则将创建一个与该给定符号同名的新符号并返回。

JavaScript代码显示此功能的工作方式:
示例1:

<script > 
    // Some symbols are created 
    const symbol1 = Symbol.for('Geeks'); 
    const symbol2 = Symbol.for(123); 
    const symbol3 = Symbol.for("gfg"); 
    const symbol4 = Symbol.for('789'); 
  
    // Getting the same symbols if found  
    // in the global symbol registry 
    // otherwise a new created and returned 
    console.log(symbol1); 
    console.log(symbol2); 
    console.log(symbol3); 
    console.log(symbol4); 
</script>

输出:

> Symbol(Geeks)
> Symbol(123)
> Symbol(gfg)
> Symbol(789)

示例2:

<script> 
    // Some symbols are created 
    const symbol1 = Symbol.for('a', 'b', 'c'); 
    const symbol2 = Symbol.for(1, 2, 3); 
    const symbol3 = Symbol.for(1 + 2); 
    const symbol4 = Symbol.for("Geeks" + "for" + "Geeks"); 
  
    // Getting the same symbols if found  
    // in the global symbol registry 
    // otherwise a new created and returned 
    console.log(symbol1); 
    console.log(symbol2); 
    console.log(symbol3); 
    console.log(symbol4);  
</script>

输出:

> Symbol(a)
> Symbol(1)
> Symbol(3)
> Symbol(GeeksforGeeks)

在上面的代码中,键不能为多个,否则它会接受第一个元素作为键并丢弃其余元素,并且如果使用某些算术运算符代替键,则此函数会将那个键视为操作的结果。

支持的浏览器:

  • Google Chrome
  • Firefox
  • Edge
  • Opera
  • Apple Safari

参考: https://devdocs.io/javascript/global_objects/symbol/for



相关用法

注:本文由纯净天空筛选整理自Kanchan_Ray大神的英文原创作品 JavaScript | Symbol.for() function。非经特殊声明,原始代码版权归原作者所有,本译文的传播和使用请遵循“署名-相同方式共享 4.0 国际 (CC BY-SA 4.0)”协议。