ES6_07_Symbol属性
Symbol属性:
前言:ES5中对象的属性名都是字符串,容易造成重名,污染环境 Symbol:
      概念:ES6中的添加了一种原始数据类型symbol(已有的原始数据类型:String, Number, boolean, null, undefined, 对象)
      特点:
        1、Symbol属性值对应的值是唯一的,解决命名冲突问题
        2、Symbol值不能与其他数据进行计算,包括同字符串拼串
        3、for in, for of遍历时不会遍历symbol属性。
      使用:
        1、调用Symbol函数得到symbol值
let symbol = Symbol(); let obj = {}; obj[symbol] = 'hello';
        2、传参标识
let symbol = Symbol('one');
let symbol2 = Symbol('two');
console.log(symbol);// Symbol('one')
console.log(symbol2);// Symbol('two')
        3、内置Symbol值
          * 除了定义自己使用的Symbol值以外,ES6还提供了11个内置的Symbol值,指向语言内部使用的方法。
          - Symbol.iterator
           * 对象的Symbol.iterator属性,指向该对象的默认遍历器方法(后边讲)
举例:
//创建symbol属性值 let symbol = Symbol(); console.log(symbol); let obj = {username:'kobe', age:39}; obj[symbol] = 'hello'; console.log(obj); //for in ,for of不能遍历symbol属性 for(let i in obj){ console.log(i); } let symbol2 = Symbol('one'); let symbol3 = Symbol('two'); console.log(symbol2 == symbol3); console.log(symbol2, symbol3); //可以去定义常量 const Person_key = Symbol('person_key'); console.log(Person_key);
    我是一个刚刚开始写博客的大可,内容有不详细或是错误的,还希望各位大佬私信我,我会进行纠正,谢谢啦!^-^

 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号