`Object.keys(Object(this))`这里面的`this`是什么?为什么`value`值输出为`undefined`?  const obj = { a: 1, b: 2, c: 3 } Object.prototype[Symbol.iterator] = function value() { console.log("this-------", this,Object(this)); const keys = Object.keys(Object(this)); let nextIndex = 0; function next() { return nextIndex < keys.length ? { value: [keys[nextIndex], obj[keys[nextIndex++]]], done: false } : { value: undefined, done: true }; } return { next } } for (const [key, value] in obj) { console.log('key----', key); console.log('value----', value); }