我对代码有几个问题。
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 + ".");
};
答案 0 :(得分:0)
1)不,它设置 <div class="ui top attached demo inverted menu">
<div class="pusher">
<div class="ui main text container">
<h3>Page Two</h3>
<h3>Page Two</h3>
<h3>....</h3>
</div>
</div>
</div>
值并传递参数,但是因为它将this
的{{1}}值设置为this
内的Person
this
}},它也可以Student
Person
访问Student
,但不是相反。
所有call(this-value, [arg1,arg2])
和apply(this-value, [[arg1,arg2]])
都会使用给定的this-value和参数调用函数。
2)是的,Student.prototype = Object.create(Person.prototype)
复制Person
的原型,并将其设置为Student
的原型,为Student
提供与Person
相同的原型方法,但副本,不一样的参考。