@@大会

时间:2016-11-19 12:14:55

标签: javascript ecmascript-6

方法声明中double(@@)背后的约定是什么?

例如来自: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols

  

每当需要迭代一个对象时(例如在一个对象的开头)   for..of loop),调用它的@@ iterator方法,没有参数,和   返回的迭代器用于获取要迭代的值。

1 个答案:

答案 0 :(得分:7)

这是" well-known symbols,"的规范简写。而不是你按字面意思输入的东西。例如,@@iteratorSymbol.iterator,这是您用来获取对象的默认iterator的关键字:

let defaultIterator = theObject[Symbol.iterator];