1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| function* objectEntries() { let propKeys = Object.keys(this);
for (let propKey of propKeys) { yield [propKey, this[propKey]]; } }
let jane = { first: 'Jane', last: 'Doe' };
jane[Symbol.iterator] = objectEntries;
for (let [key, value] of jane) { console.log(`${key}: ${value}`); }
|