Это огромная ошибка, если вы написали
Student.prototype.constructor = Student;
, но тогда, если бы существовал Учитель, чей прототип был также Person, и вы написали
Teacher.prototype.constructor = Teacher;
, тогда Студент конструктор теперь учитель!
Редактировать: вы можете избежать этого, убедившись, что вы установили прототипы ученика и учителя, используя новые экземпляры класса Person, созданные с использованием Object.create, как в примере Mozilla.
Student.prototype = Object.create(Person.prototype);
Teacher.prototype = Object.create(Person.prototype);