为什么我们要定义符号.[Symbol]的迭代器.迭代器)?javascript中的可迭代对象
Why do we have to define Symbol.iterator with [Symbol.iterator] ? for iterables in javascript?
为什么要用那些[]来定义js中的@@迭代器协议呢?
// Works smoothly
var iterable = {
[Symbol.iterator]() {}
}
// This fails with SyntaxError: unexpected token .
var iterable = {
Symbol.iterator() {}
}
因为对象字面值中的键必须是有效的标识符("变量名"),并且按字面意思作为给定的名称。如果您想使用表达式作为键(Symbol.iterator
的值,而不是文字名称"Symbol.iterator"),则需要使用计算属性{ [...]: ... }
语法。
相关文章:
- Rails:试图在javascript(Google Charts API)中嵌入一个adv-ruby(each+迭代器
- 在javascript中,从迭代器创建Array
- Javascript中的迭代器和生成器
- javascript中多维数组的迭代器
- Javascript使用for-in循环迭代器来设置变量
- Javascript 替换为 /gi 和数组迭代器
- 如何使用 Javascript 将迭代器索引号附加到数组中的每个项目
- 如何将 Struts 2 中的迭代器列表传递给 JavaScript
- 将自定义迭代器添加到 JavaScript 类
- Javascript 对象调用其他对象粉碎迭代器
- PHP 查询数组到 Javascript Google Maps 迭代器
- 如何循环来自生成器的JavaScript迭代器
- Javascript-如何在带有回调的for循环中使用迭代器
- javascript for..迭代器之谜
- 如何访问Javascript中循环函数的helper中的迭代器
- 如何在JavaScript中创建计数生成器/迭代器级联
- Javascript迭代器建议
- 为什么我们要定义符号.[Symbol]的迭代器.迭代器)?javascript中的可迭代对象
- 如何从迭代器本地链接JavaScript方法
- 迭代器中..的Javascript原型