[es6] symbol 是个啥东西,具体有什么用,有哪些应用场景,js内置的对于symbol 的应用有哪些

首先请看官网,然后明确下面几个基本知识点

  1. Symbol 是 es6 提出,是基本数据类型
  2. typeof SymbolInstance = symbol
  3. 不支持 new 语法
  4. 每个 Symbol() 返回的值都是唯一的
  5. 可以作为对象的属性,且是唯一的属性
  6. 有内置通用 symbol,可以使用属性访问
    1. 迭代
      1. Symbol.iterator 返回一个对象默认迭代器的方法,被 for ... of 使用
      2. 可以显式使用 arr[Symbol.iterator]()
    2. 正则表达式
      1. Symbol.match 对字符串进行匹配的方法,也用于确定一个对象是否作为正则表达式使用,被String.prototype.match 使用
    3. Symbol.toPrimitive
      1. 一个对象转为基本数据类型的方法【彻底搞懂隐式转换
    4. Symbol.toStringTag
      1. 用于对象的默认描述的字符串值,被 Object.prototype.toString 使用

Symbol 应用场景

  1. 创建唯一的对象键,作为对象的唯一属性,避免名字冲突,也不怕和原型上的变量冲突了
  2. 作为对象 / class 的私有成员,因为只有持有对应符号的引用的代码才能访问它们
  3. 隐藏性,不会再 for...in 循环中,也不会被 Object.keys 等方法返回
  4. 使用内置符号,如 Symbol.iterator用于迭代器
  5. 在 ajax 中使用 symbol

相关推荐

  1. Vue常用修饰符哪些什么应用场景

    2024-02-23 18:40:01       51 阅读
  2. js哪些对象

    2024-02-23 18:40:01       48 阅读
  3. Redis应用场景哪些

    2024-02-23 18:40:01       37 阅读
  4. 视觉识别应用场景哪些

    2024-02-23 18:40:01       38 阅读
  5. 什么云计算?应用场景哪些

    2024-02-23 18:40:01       47 阅读
  6. ES什么ES使用场景哪些?分词器??

    2024-02-23 18:40:01       30 阅读
  7. ElasticSearch什么哪些应用哪些优缺点?

    2024-02-23 18:40:01       34 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-02-23 18:40:01       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-02-23 18:40:01       101 阅读
  3. 在Django里面运行非项目文件

    2024-02-23 18:40:01       82 阅读
  4. Python语言-面向对象

    2024-02-23 18:40:01       91 阅读

热门阅读

  1. uniapp 如何嵌套H5 页面?

    2024-02-23 18:40:01       47 阅读
  2. js-前端存储之sessionStorage

    2024-02-23 18:40:01       51 阅读
  3. 汇编英文全称

    2024-02-23 18:40:01       48 阅读
  4. uni-app中组件和样式的使用

    2024-02-23 18:40:01       45 阅读
  5. TypeScript基础知识点

    2024-02-23 18:40:01       44 阅读
  6. 超参数优化

    2024-02-23 18:40:01       34 阅读
  7. 【无标题】

    2024-02-23 18:40:01       49 阅读
  8. 第10章 搭建网盘服务

    2024-02-23 18:40:01       39 阅读
  9. Linux第64步_编译移植好的虚拟机文件

    2024-02-23 18:40:01       39 阅读
  10. npm install报错,解决记录

    2024-02-23 18:40:01       52 阅读
  11. vue+electron 修改默认安装目录

    2024-02-23 18:40:01       45 阅读