JS的ES6的Symbol

一.Symbol

1.什么是Symbol:

Symbol是ES6新添加的原始类型(ES5已有原始数据类型:String,Number,boolean,function,undefined,object{对于null ,Array()的typeof都是object})

2.Symbol类型的特点:

  • Symbol属性对应的值是唯一的,解决命名冲突问题

  • Symbol值不能与其他数据类型进行计算,包括同字符串拼接

  • for in,for of遍历时都不会遍历Symbol属性。

3.Symbol使用:

  1. 调用Symbol函数得到symbol值

  2. 传参标识

  3. 内置Symbol值

1       //调用Symbol函数得到symbol值,传参标识
2       let symbol = Symbol("symbol1");
3       console.log(typeof symbol);   //symbol
4       console.log(symbol);          //Symbol(symbol1)
5 
6       let obj = {username: 'kobe', age: 39};
7       //内置Symbol值
8       obj[Symbol.iterator] = function(){};  //不规则或特殊的属性
9       console.log(obj);

 

posted @ 2019-12-11 00:51  All_just_for_fun  阅读(238)  评论(0编辑  收藏  举报