Symbol

ES6新特征 - Symbol

本节主要介绍了ES6新特征中Symbol的基本用法与内置Symbol。

2021-01-25侠课岛    初级拔高       

前端/前端/前端系列课程P2 5     0     1037

(五十六)ES6新特征 - Symbol

1:基本概念

  • Symbol - 表示独一无二的值 - 类字符串数据类型

2:基本用法

  • undefined、null、Boolean、String、Number、Object、Symbol
  let symbol = Symbol();

  typeof symbol
  /* symbol */

  /* 接收参数 - 仅作为描述 */
  let symbol1 = Symbol('week');

  symbol1;
  /* Symbol(week) */

  symbol1.toString();
  /* "Symbol(week)" */

  let symbol1 = Symbol();
  let symbol2 = Symbol();

  symbol1 === symbol2;
  /* false */

  let symbol1 = Symbol('object');
  let symbol2 = Symbol('object');

  symbol1 === symbol2;
  /* false */

  /* 隐式转换 */
  const obj = {
      toString() {
          return 'object';
      }
  };
  const symbol = Symbol(obj);
  symbol;
  /* Symbol(object) */

  /* 不能参与运算 */
  let symbol = Symbol('symbol');

  "hello" + symbol;
  /* TypeError: Cannot convert a Symbol value to a string */

  /* 类型转换 */
  String(symbol);
  symbol.toString();
  /* Symbol(symbol) */

  let symbol = Symbol();
  Boolean(symbol);
  /* true */

  Number(symbol);
  /* TypeError: Cannot convert a Symbol value to a number */
  • description - Symbol描述
  const symbol = Symbol('symbol');
  sym.description;
  /* "symbol" */

本教程图文或视频等内容版权归侠课岛所有,任何机构、媒体、网站或个人未经本网协议授权不得转载、转贴或以其他方式复制发布或发表。

评价

5

本课评分:
  •     非常好
难易程度:
  •     适中的

内容目录


本文索引

本文标签


|
教程
粉丝
主页

签到有礼

已签到2天,连续签到7天即可领取7天全站VIP

  • 1
    +2 金币
  • 2
    +3 金币
  • 3
    +5 金币
  • 6
    +7 金币
  • 5
    +6 金币
  • 4
    暖心福利
    自选分类VIP ×1天
  • 7
    惊喜大礼

    自选分类VIP ×3天 +20金币
  • 持续签到 +8 金币

金币可以用来做什么?