Home > Software engineering >  the incrementAge function is returning undefined/NaN when invoked after defining the new User
the incrementAge function is returning undefined/NaN when invoked after defining the new User

Time:08-29

sorry, the incrementAge function is returning undefined/NaN when invoked after defining the new User. I am not sure what's wrong

function User(name,age){
this.name = name;
this.age = age;
}

User.prototype.incrementAge = ()=>{
return this.age  ;
}

const mike = new User("Mike",20);
console.log(mike.incrementAge());

CodePudding user response:

The correct way to do this is to create a User class and create a method to raise the value of the variable age.

As you can see by calling the increment age method several times the value is added.

class User {
  constructor(name, age) {
    this.name = name;
    this.age = age;
  }

  incrementAge() {
    return   this.age;
  }
}

const mike = new User("Mike", 20);

console.log(mike.incrementAge());
console.log(mike.incrementAge());

CodePudding user response:

The solution (by @ChrisG in comments)

function User(name, age) {
  this.name = name;
  this.age = age;
}

User.prototype.incrementAge = function () {
  return   this.age;
}

const mike = new User("Mike", 20);
console.log(mike.incrementAge());

  • Related