Factory Functions & Singleton Pattern

What feature is demonstrated by the Object.defineProperty() usage?
function createPerson(name, age) {
  const person = {
    name,
    age,
    greet() {
      return `Hello, I'm ${this.name}`;
    }
  };
  
  Object.defineProperty(person, 'birthYear', {
    get() {
      const currentYear = new Date().getFullYear();
      return currentYear - this.age;
    }
  });
  
  return person;
}
Next Question (20/32)