题目来源及自己的思路
http://es6.ruanyifeng.com/#do... 介绍中的一段代码
相关代码
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}`);
}
你期待的结果是什么?实际看到的错误信息又是什么?
以上代码中,this 最终指向到了jane,如何理解?### 题目描述
objectEntries函数等同于这样
for..of对jane进行遍历的时候,调用了jane对象的iterator,所以this指向jane对象