in packages/fbjs/src/core/enumerate.js [176:196]
next() {
let len = this._keys.length;
let index = this._nextIndex;
let kind = this._kind;
let key = this._keys[index];
if (index >= len) {
this._iteratedObject = undefined;
return {value: undefined, done: true};
}
this._nextIndex = index + 1;
if (kind === KIND_KEYS) {
return {value: key, done: false};
} else if (kind === KIND_VALUES) {
return {value: this._iteratedObject[key], done: false};
} else if (kind === KIND_ENTRIES) {
return {value: [key, this._iteratedObject[key]], done: false};
}
}