(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);