方法声明中double(@@
)背后的约定是什么?
例如来自: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols
每当需要迭代一个对象时(例如在一个对象的开头) for..of loop),调用它的@@ iterator方法,没有参数,和 返回的迭代器用于获取要迭代的值。
答案 0 :(得分:7)
这是" well-known symbols,"的规范简写。而不是你按字面意思输入的东西。例如,@@iterator
是Symbol.iterator
,这是您用来获取对象的默认iterator的关键字:
let defaultIterator = theObject[Symbol.iterator];