Javascript 为什么使用';这';关键字在运行时不工作';正在使用对象名
我在控制台用“calculator”调用函数时得到了结果,但在使用“this”关键字时显示为未定义Javascript 为什么使用';这';关键字在运行时不工作';正在使用对象名,javascript,this,Javascript,This,我在控制台用“calculator”调用函数时得到了结果,但在使用“this”关键字时显示为未定义 const calculator = { calcBMI: function (mass, height) { const BMI = mass / height ** 2; return BMI; }, firstName: "Arvind", }; console.log(calculator.calcBMI(6, 1.8)); console
const calculator = {
calcBMI: function (mass, height) {
const BMI = mass / height ** 2;
return BMI;
},
firstName: "Arvind",
};
console.log(calculator.calcBMI(6, 1.8));
console.log(this.calcBMI(6, 1.8));
此处
此
表示窗口对象。窗口对象中未定义calcBMI
方法。因此它返回未定义的
const计算器={
calcBMI:功能(质量、高度){
常数BMI=质量/高度**2;
返回体重指数;
},
名字:“Arvind”,
};
console.log(this)
此
将不等于计算器
。实际值将取决于上下文和执行,但至少在您显示的代码中可能是窗口
或未定义的
。我完全不知道您为什么希望此
解析为计算器
指定的对象。