这是组类的构造函数,其作用类似于集合。
constructor(){
this.list = [];
}
[Symbol.iterator](){
return new GroupIterator(this.list);
}
这应该使组对象更可悲,但我找不到错误。
class GroupIterator{
constructor(group){
this.group = group;
this.position = 0;
}
next(){
let result = {
value: undefined,
done: true,
};
if(this.position >= this.group.list.length){
return result;
}
result.value = group.list[this.position];
result.done = false;
this.position++;
return result;
}
}
答案 0 :(得分:0)
好像您在这里有一个小错误,列表应该是encode
,而不是this.group.length
,列表是命名组。供参考:
this.group.list.length
答案 1 :(得分:0)
因为您的属性称为group
-没有附加list
,因为group
是您传递给构造函数的数组。
if (this.position >= this.group.length) {...}
并确保将group[this.position]
替换为this.group[this.position]
。