1 第七种数据类型Symbol
ES6引入了一种新的原始数据类型Symbol,表示独一无二的值。它是JavaScript语言的第七种数据类型,前六种是:Undefined、Null、布尔值(Boolean)、字符串(String)、数值(Number)、对象(Object)。
let s = Symbol(); console.log(typeof s); //"symbol"
Symbol类型变量通过Symbol()方法来构建(不能使用new),另外该方法可以接受一个字符串类型的参数作为该Symbol的描述
let s1 = Symbol('tag');
let s2 = Symbol('tag');
s1 == s2; //false,参数仅仅作为描述,就算相同描述的两个Symbol也是不同的Symbol类型使用注意:
let s = Symbol();
"symbol:" + s; //报错,无法和字符串运算
s + 2; //报错,无法和字符串运算
s1.toString(); //"Symbol(tag)",Symbol显示转换为字符串类型是可以的
if(s){
... //可以转换为bool
}说了这么多,ES6中引入Symbol到底是用来干嘛呢?
延伸阅读
- ssh框架 2016-09-30
- 阿里移动安全 [无线安全]玩转无线电——不安全的蓝牙锁 2017-07-26
- 消息队列NetMQ 原理分析4-Socket、Session、Option和Pipe 2024-03-26
- Selective Search for Object Recognition 论文笔记【图片目标分割】 2017-07-26
- 词向量-LRWE模型-更好地识别反义词同义词 2017-07-26
- 从栈不平衡问题 理解 calling convention 2017-07-26
- php imagemagick 处理 图片剪切、压缩、合并、插入文本、背景色透明 2017-07-26
- Swift实现JSON转Model - HandyJSON使用讲解 2017-07-26
- 阿里移动安全 Android端恶意锁屏勒索应用分析 2017-07-26
- 集合结合数据结构来看看(二) 2017-07-26
学习是年轻人改变自己的最好方式