🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
#### symbol: - 从根本上防止属性名的冲突,这就是 ES6 引入Symbol的原因 - 它是一种类似于字符串的数据类型,Symbol函数前不能使用new命令,否则会报错。这是因为生成的 Symbol 是一个原始类型的值,不是对象 - Symbol 值作为对象属性名时,不能用点运算符 #### set: - ES6 提供了新的数据结构 Set。它类似于数组,但是成员的值都是唯一的,没有重复的值。 - add(value):添加某个值,返回Set结构本身。 - delete(value):删除某个值,返回一个布尔值,表示删除是否成功。 - has(value):返回一个布尔值,表示该值是否为Set的成员。 - clear():清除所有成员,没有返回值。 - 数组去重 `[...new Set(array)]` #### weakSet: - WeakSet 的成员只能是对象,而不能是其他类型的值。 - WeakSet 不能遍历,是因为成员都是弱引用,随时可能消失,遍历机制无法保证成员的存在,很可能刚刚遍历结束,成员就取不到了