您好,欢迎访问一九零五行业门户网

es6中symbol到底是什么

es6中的symbol是一种新的原始数据类型,用于表示独一无二的值,最大的用法是用来定义对象的唯一属性名;因为symbol是原始数据类型,不是对象,所以symbol函数栈不能用new命令。
本教程操作环境:windows10系统、ecmascript 6.0版、dell g3电脑。
es6中symbol到底是什么es6 引入了一种新的原始数据类型 symbol ,表示独一无二的值,最大的用法是用来定义对象的唯一属性名。
es6 数据类型除了 number 、 string 、 boolean 、 object、 null 和 undefined ,还新增了 symbol 。
基本用法
symbol 函数栈不能用 new 命令,因为 symbol 是原始数据类型,不是对象。可以接受一个字符串作为参数,为新创建的 symbol 提供描述,用来显示在控制台或者作为字符串的时候使用,便于区分。
let sy = symbol("kk");console.log(sy); // symbol(kk)typeof(sy); // "symbol" // 相同参数 symbol() 返回的值不相等let sy1 = symbol("kk"); sy === sy1; // false
参数特点
symbol的参数一般会存放一个字符串 用来标识不同的值,如果symbol的参数是一个对象,那么就会调用该对象的tostring方法,将其转换成字符串,然后在生成一个symbol值。
var s1 = symbol('id1');var s2 = symbol('id1');console.log(s1 == s2);//falsevar s3 = symbol({});console.log(s3);//symbol([object object])
symbol里面的参数是表示当前这个symbol值的描述,即便参数相同这两个symbol值也不会相同。
用法及特点
symbol 作为对象属性名时不能用.运算符,要用方括号。因为.运算符后面是字符串,所以取到的是字符串 sy 属性,而不是 symbol 值 sy 属性。
let syobject = {};syobject[sy] = "kk";syobject[sy]; // "kk"syobject.sy; // undefined
【相关推荐:javascript视频教程、web前端】
以上就是es6中symbol到底是什么的详细内容。
其它类似信息

推荐信息