我有一个带有返回颜色的方法的对象,然后将该方法分配给变量,并且在调用时必须输出相同的颜色。
'use strict';
let car = {
color: 'Blue',
colorFunc: function(){
return this.color;
}
};
{
let object = car;
car = null;
let colorFunc = object.colorFunc;
console.log(object.colorFunc()); // logs `Blue`
console.log(colorFunc()); // supposed to log `Blue`
object.color = 'Red'
console.log(object.colorFunc()); // logs `Red`
console.log(colorFunc()); // supposed to log `Red`
}
我希望两个函数调用都返回相同的值。 实际结果是“无法读取未定义的属性名称”
PS:我应该只在对象范围内添加代码。在没有对象的情况下,如何编写该方法以使其返回颜色?