首页 > 解决方案 > 无法从原型获取更新属性

问题描述

在下面的代码中,我不明白为什么最后一个 console.log 不返回'kj18',尽管 pro-type 在该行之前已更改。

你能给我一个解释吗?

var studentId = 'ab73';

function Student() {
  this.studentId = 'b0e1';
}

console.clear()

console.log(new Student().studentId);

Student.prototype.studentId = 'kj18'
Student.prototype.classId = '5e'

console.log(new Student().classId)
console.log(new Student().studentId) // why is not kj18

标签: javascript

解决方案


因为function Student()当您从 Student 创建一个新实例时,会执行中的分配,而这一切都发生在此分配之后:Student.prototype.studentId = 'kj18'


推荐阅读