关于 JavaScript 的原型概念
about prototype concept of JavaScript
(来自我的代码)
我想知道 Person 的原型为其 child 提供了继承权。
我知道 'Programmer object(?)' 继承了 Person 的 'introduce' 属性。
但我不确定 'Programmer' 继承了 Person 的 'name' 和 'age' 属性。
在 Chrome 控制台中,看起来 Programmer 继承了 Person 的 'name',
但是,在我的记忆中,我的老师说过不继承人的'name'属性.......
什么是真的????
(我可以区分'[[prototype]]'和'prototype property')
但是我不确定什么东西搞原型可以继承什么东西不搞原型,
////////////////////
in
function X(){
this.Z = null;
};
X.prototype.Y = null;
X 的 child 继承 'Y',但不继承 Z
这样对吗??
(抱歉我不是英语母语,)
//这是我的代码
<script>
function Person(name, age){
this.name = name;
this.age =age;
}
Person.prototype.introduce = function(){
console.log("My name is "+this.name);
}
function Programmer(){
this.coding = function(){
console.log("I can code up");
}
}
Programmer.prototype = new Person("XX", 19);
</script>
一个典型的对象从 Object.prototype 继承属性(包括方法),尽管这些属性可能被隐藏(a.k.a。被覆盖)。
(来自我的代码) 我想知道 Person 的原型为其 child 提供了继承权。 我知道 'Programmer object(?)' 继承了 Person 的 'introduce' 属性。 但我不确定 'Programmer' 继承了 Person 的 'name' 和 'age' 属性。 在 Chrome 控制台中,看起来 Programmer 继承了 Person 的 'name', 但是,在我的记忆中,我的老师说过不继承人的'name'属性.......
什么是真的???? (我可以区分'[[prototype]]'和'prototype property') 但是我不确定什么东西搞原型可以继承什么东西不搞原型,
////////////////////
in
function X(){
this.Z = null;
};
X.prototype.Y = null;
X 的 child 继承 'Y',但不继承 Z
这样对吗??
(抱歉我不是英语母语,)
//这是我的代码
<script>
function Person(name, age){
this.name = name;
this.age =age;
}
Person.prototype.introduce = function(){
console.log("My name is "+this.name);
}
function Programmer(){
this.coding = function(){
console.log("I can code up");
}
}
Programmer.prototype = new Person("XX", 19);
</script>
一个典型的对象从 Object.prototype 继承属性(包括方法),尽管这些属性可能被隐藏(a.k.a。被覆盖)。