JavaScript - Symbol.description 属性



作为 JavaScript 语言的补充,Symbol.description 属性首次包含在 ECMAScript 中。它允许描述 Symbol,这是一种不可变且独特的独特数据类型,首次引入 ES6。

在引入 Symbol.description 之前,Symbol 缺乏内在的人类可读表示,并且实际上是不透明的值。开发人员可以通过使用 Symbol.description 为 Symbol 提供字符串描述。此描述不会影响符号的唯一性;两个单独的符号可以具有相同的描述。但是,它提供了一种方便的方法来为 Symbol 添加含义或元数据,使它们在调试和日志记录场景中更有用。

语法

以下是 JavaScript Symbol.description 属性的语法:

A.description;

参数

此属性不接受任何类型的参数。

返回值

此属性返回符号对象的可选描述。

示例

示例 1

让我们看看下面的示例,我们将使用 x.description 返回符号的描述。

<html>
   <style>
      body {
         font-family: Bradley Hand ITC;
         font-size: 30px;
         color: #DE3163;
      }
   </style>
   <body>
      <script>
         const x = Symbol('TutorialsPoint');
         document.write(x.description);
      </script>
   </body>
</html>

如果我们执行上述程序,它将在网页上显示文本。

示例 2

考虑下面的示例,我们将遍历 'tp' 对象中定义的符号并记录它们的描述。

<html>
   <style>
      body {
         font-family: verdana;
         color: #DE3163;
      }
   </style>
   <body>
      <script>
         const x = Symbol('Hi');
         const y = Symbol('Welcome');
         const tp = {
            [x]: 'a',
            [y]: 'b'
         };
         Object.getOwnPropertySymbols(tp).forEach(z => {
            document.write(z.description + " < br > ");
         });
      </script>
   </body>
</html>

执行上述脚本后,它将在网页上显示文本。

示例 3

在下面的示例中,我们将创建一个函数来检查符号是否包含描述。

<html>
   <style>
      body {
         font-family: Bradley Hand ITC;
         font-size: 30px;
         color: #DE3163;
      }
   </style>
   <body>
      <script>
         function x(sym) {
            return !!sym.description;
         }
         const a = Symbol('Welcome');
         const b = Symbol();
         document.write(x(a) + " < br > ");
            document.write(x(b));
      </script>
   </body>
</html>

当我们执行脚本时,它将在网页上显示文本。

广告

© . All rights reserved.