首先我们要明确的是 javascript 并不是面向对象的程序设计语言
所以在js中并不存在继承,多态等面向对象语言所具有的特性,我们只能通过特殊方式来实现伪继承。
一、prototype属性
在js中,默认会对每一个函数添加一个prototype属性,我们可以通过该属性对函数添加新的属性和方法,以此来实现与继承类似的效果。
例如:
<script>
function employee(name,jobtitle,born)
{
this.name=name;
this.jobtitle=jobtitle;
this.born=born;
}
var fred=new employee("Fred Flintstone","Caveman",1970);
employee.prototype.salary=20000;
document.write(fred.salary);
</script>
我们通过prototype属性为Employee函数添加了salary属性,之后我们就可以通过Employee的对象获取到这个属性。