Symbol数据类型

263 阅读1分钟

(Symbol数据类型--了解)

Symbol是js的第七种数据类型的产物。用于生成唯一的一个值。

例如:

const alex = Symbol(); const tom = Symbol();

console.log(alex == tom); //false 那么,如果说,我们用一个对象去存储班级中的所有童鞋。

可是,我们班级当中,就有两个同名的孩子。那么,我们存储到对象当中,肯定会被覆盖掉一个值。那么,就可以使用我们的Symbol了。

const students = { [Symbol('Tina')]: {sex: "girl", age: 18}, [Symbol('Tina')]: {sex: "boy", age: 19} }

console.log(students) image; 可以看到我们的同名值并没有被覆盖掉。

注意点:

Symbol是不可枚举的,所以。你无法使用枚举方法去获取Symbol的值。 那么,我们如何才能取到存进去的值呢?

ES6为我们提供了一个方法去获取Symbol的值

const keys = Object.getOwnPropertySymbols(students);