各位观众老爷,晚上好!我是你们的老朋友,今天咱唠唠嗑,说说JavaScript里一个有点神秘又有点意思的家伙:Symbol。 说它神秘,是因为很多人觉得这玩意儿不常用,不知道有啥用;说它有意思,是因为它确实能解决一些实际问题,让你的代码更优雅,更安全。 咱们今天就来扒一扒Symbol的底裤,看看它到底是个什么玩意儿,以及它在Object属性里那些独一无二的骚操作。 一、Symbol是啥?别跟我扯概念,说人话! 咱们先抛开那些官方的、晦涩难懂的定义。 简单来说,Symbol就是一种唯一的标识符。 注意,是唯一的! 这玩意儿创建出来就跟身份证一样,独一无二,谁也别想冒充。 以前我们用字符串来表示对象的属性名,比如 obj.name = “张三”。 但是,字符串有个问题,就是容易冲突。 如果两个库都想给同一个对象添加一个 name 属性,那就完犊子了,后面的会覆盖前面的。 Symbol 的出现就是为了解决这个问题。 它保证了即使你用相同的描述创建两个 Symbol,它们也是不同的。 二、Symbol 怎么用?来点代码! 创建 Symbol 很简单,只需要调用 Symbol() 函数就行了。 …
继续阅读“JavaScript内核与高级编程之:`JavaScript`的`Symbol`类型:其在`Object`属性中的独特性。”