当前位置:首页 > ES6 > 正文内容

es6 Symbol

自由小鸟6年前 (2019-07-27)ES63462

Symbol是js 提供了独一无二的值


let a1=Symbol();

let a2=Symbol();

console.log(a1===a2)   //false


let a3=Symbol.for('a3');

let a4=Symbol.for('a3')

console.log(a3===a4)  //true  先检查之前有没有变量,如果有就等于之前的变量值

image.png


image.png

拿不到Symbol的值 abc,这时候需要用一个新的api    Object.getOwnPropertySymbols(obj) 数组 我后用forEach 但是只能拿到Symbol的值


Reflect.ownkeys(obj)   这个返回所有的变量属性值 key  value  返回的就是一个数组用forEach遍历就可以



1,非Symbol值   Object.entries(obj)

2,Symbol值  Object.getOwnPrepertySymbols(obj)

3,所有的值 Reflect.ownKeys(obj)













版权声明:本文由Web学习之路发布,如需转载请注明出处。

本文链接:https://webge.net/?id=53

返回列表

上一篇:es6 函数扩展

下一篇:es6 语法

“es6 Symbol” 的相关文章

es6数值扩展

Number.isFinite    函数用于检查其参数是否是无穷大es6 只对数字操作,如果不是数字就返回falseisFinite(25) // true Number.isFinite(25) // trueisFinite("25"...

es6 数组扩展

Array.fromArray.ofcopyWithinfind/findindexfillentries/keys/valuesinludes{    let arr=Array.of(3,4,7,9,11)   //把一组数据变量转换成...

es6 函数扩展

参数默认值rest参数扩展运算符箭头函数this绑定尾调用// 参数默认值{    function test(x,y='world'){        conso...

es6 类

类的概念(基本语法,继承关系,静态方法,表态属性)类还提供了getter  setter{//基本定义和生成实例class Parent{constructor(name='mukewang'){this.name=name;}}}{//继承class Parent{con...

es6 promise

es6 promise

Promise是为解决什么问题而产生的?promise是为解决异步处理回调金字塔问题而产生的Promise的两个特点1、Promise对象的状态不受外界影响1)pending 初始状态2)resolve 成功状态3)reject 失败状态Promise 有以上三种状态,只有异步操作的结果可以决定当前...

es6 解构函数默认值

es6 解构函数默认值

1,如果函数对数解构值有默认值的情况,调用传值参数不传不会报错2,如果出现解构值没有默认值,那当传参数的时候没有传就会报错...