es6引入的第七种数据类型Symbol
创始人
2024-06-03 02:11:41
0
  1. Symbol是一个类似字符串的独一无二的值
  2. 创建一个Symbol
    【通过Symbol构造函数创建】
    const s = Symbol('a'); // a为描述信息
    const s1 = Symbol('a');
    console.log(s === s1); // false
    
    【通过Symbol.for方法创建】
    const s = Symbol.for('a');
    const s1 = Symbol.for('a');
    console.log(s === s1); // true
    
  3. 遍历对象的方法
    const key = Symbol('Symbol描述');
    const obj = {type: 'Symbol',[key]: '这是一个Symbol类型的数据'
    };
    
    ① 获取对象中所有的Symbol类型
    console.log(Object.getOwnPropertySymbols(obj)); // 获取对象中所有symbol类型的属性
    
    ② 遍历所有类型
    for(const key of Reflect.ownKeys(obj)) {console.log(key);
    }
    
  4. 应用场景
    ① 解决对象的属性名冲突问题
    ② 对象中的某个属性不想被外界所访问到的时候(隐藏)

相关内容

热门资讯

监控摄像头接入GB28181平... 流程简介将监控摄像头的视频在网站和APP中直播,要解决的几个问题是:1&...
Windows10添加群晖磁盘... 在使用群晖NAS时,我们需要通过本地映射的方式把NAS映射成本地的一块磁盘使用。 通过...
protocol buffer... 目录 目录 什么是protocol buffer 1.protobuf 1.1安装  1.2使用...
Fluent中创建监测点 1 概述某些仿真问题,需要创建监测点,用于获取空间定点的数据࿰...
educoder数据结构与算法...                                                   ...
MySQL下载和安装(Wind... 前言:刚换了一台电脑,里面所有东西都需要重新配置,习惯了所...
MFC文件操作  MFC提供了一个文件操作的基类CFile,这个类提供了一个没有缓存的二进制格式的磁盘...
在Word、WPS中插入AxM... 引言 我最近需要写一些文章,在排版时发现AxMath插入的公式竟然会导致行间距异常&#...
有效的括号 一、题目 给定一个只包括 '(',')','{','}'...
【Ctfer训练计划】——(三... 作者名:Demo不是emo  主页面链接:主页传送门 创作初心ÿ...