方法在Javascript中的对象内不起作用

方法在Javascript中的对象内不起作用,javascript,Javascript,我创建了一个简单的对象,它有一个返回一些计算的方法,但它不起作用 我声明了对象及其属性和方法,如所附代码中所示 <p id="demo"></p> <script> var person = new Object(); person.firstName= "John"; person.lastName= "Doe"; person.age=40; person.retireAtAge= function (){ retu

我创建了一个简单的对象,它有一个返回一些计算的方法,但它不起作用

我声明了对象及其属性和方法,如所附代码中所示

<p id="demo"></p>
<script>
    var person = new Object();
    person.firstName= "John";
    person.lastName= "Doe";
    person.age=40;
    person.retireAtAge= function (){ return (this.age+25);};
    document.getElementById("demo").innerHTML=person.firstName + " Retires at " + person.retireAtAge;
 </script>

var person=新对象(); person.firstName=“约翰”; person.lastName=“Doe”; 人,年龄=40岁; person.retireAtAge=function(){return(this.age+25);}; document.getElementById(“demo”).innerHTML=person.firstName+“在”+person.retireAtAge退休;
预期产出为:
约翰65岁退休

但我现在得到的是:
John在函数()处退休{return(this.age+25);}

您需要通过将
()
放在函数变量的末尾来调用该方法

document.getElementById("demo").innerHTML=person.firstName + " Retires at " + person.retireAtAge();