ES6——Symbol数据类型

Posted zyhbook

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ES6——Symbol数据类型相关的知识,希望对你有一定的参考价值。

什么是 Symbol ?
  Symbol 表示独一无二的值,他是js中的 第七种数据类型。

  基本的数据类型:null, undefined number boolean string symbol
  引用数据类型:Object

  let s1=Symbol();
  let s2= Symbol();
  console.log(typeof s1); //symbol

  console.log(s1===s2) //false;

 

Symbol 函数不能使用 new 否则会把错,因为 Symbol 是一个原始类型的值,不是对象。

 

Symbol 函数接收一个字符串作为参数,表示对 Symbol 的描述,主要是为了在控制台显示或者转为 字符串的时候,比较容易区分。

 

  let s3=Symbol ("miaov");
  let s4=Symbol ("leo");
  console.log(s3,s4); //输出 Symbol (miaov) Symbol (leo);

 

2、Symbol 数据类型的转换。

 

  console.log(String(Symbol ("miaov")));
  console.log(Symbol ("leo").toString);
  //转换 bool值
  console.log(!! Symbol()); //true
  Symbol 不能做任何运算。

 

 

3、作为对象的属性名。

 

  let ss=Symbol("ss");
  const data={
    [ss]:"miaov"
  };
  console.log(data[ss]); //打印 miaov

  const data={
    [Symbol()]:123,
    a:1,
    b:2
  }
  //找不到 [Symbol()]:123,
  for (let i in data){
    console.log(i); 
  }

 

 

 

以上。



以上是关于ES6——Symbol数据类型的主要内容,如果未能解决你的问题,请参考以下文章

es6 新增数据类型Symbol

ES6 新增基本数据类型Symbol

ES6中的新数据类型——Symbol

ES6-----学习系列九(Symbol数据类型)

简述ES6的数据类型

es6 之 Symbol 类型