1
我有幾個關於代碼的問題。構造函數以及Javascript如何在Javascript中工作
1)在學生構造函數中,Person.call(this,firstName)讓學生獲得人的方法嗎?或者它是否改變了這個的背景?
2)我假設Student.prototype = Object.create(Person.prototype)讓我們接觸到人的方法和屬性?
我很難理解呼叫方法。
var Person = function(firstName) {
this.firstName = firstName;
};
Person.prototype.walk = function(){
console.log("I am walking!");
};
function Student(firstName, subject) {
Person.call(this, firstName);
this.subject = subject;
};
Student.prototype = Object.create(Person.prototype); // See note belo
Student.prototype.constructor = Student;
Student.prototype.sayHello = function(){
console.log("Hello, I'm " + this.firstName + ". I'm studying "
+ this.subject + ".");
};
非常感謝adeneo!我還有幾個問題。如果我創建var student1 = new Student(「john」,「physics」);當student1對象被創建時,我們調用傳入'this'(student1)的人函數和名字john。所以我們在對象person1之外調用了一個函數,允許我們共享函數 – stckpete