理解Symbol的成员 - 函数构造函数

时间:2018-05-11 16:47:00

标签: javascript ecmascript-6

在控制台上,

#> window.Symbol
ƒ Symbol() { [native code] }

表示window.Symbol是函数构造函数的名称( f )。这也与__proto__

具有原型关系(Function.prototype
#> window.Symbol.apply
ƒ apply() { [native code] }

说,applyFunction.prototype的成员函数( f )的名称,由于原型关系Symbol.apply可以__proto__访问})。

说,

#> Object.prototype.toString.call(Symbol.iterator)
"[object Symbol]"

#> window.Symbol.iterator
Symbol(Symbol.iterator)

Symbol(Symbol.iterator)是什么意思?无法获得此语法

2 个答案:

答案 0 :(得分:1)

defaultRetryOperationsInterceptor是众多well-known Symbols中的一个。

  

表示window.Symbol是函数构造函数的名称(f)。

符号不是构造函数;必须在没有Symbol.iterator的情况下调用它。它虽然是一个功能,但功能可以具有属性。

new只是对特定符号的引用,与此相比,使Symbol.iterator引用X.first的特定实例没有太大区别:

X

答案 1 :(得分:0)

你去了{p> Here。它只是Symbol toString()的实现方式(反过来在控制台中打印),而不是任何特殊的语法。