语言发展史
机器语言 > 汇编语言 > 面向过程 > 面向对象 > 模块的系统 > 框架 > 系统api
面向对象
ES5面向对象(伪的)的写法
<script>
//以函数的形式来写对象
function Person(name,age){
this.name=name;
this.age=age;
}
//给类添加方法
Person.prototype.showName=function(){
console.log(this.name)
}
Person.prototype.showAge=function(){
console.log(this.age)
}
let p=new Persopn('zhang',18);
p.showName();
p.showAge();
</script>
ES5面向对象(继承)
```
<script>
function Worker(name,age,job){
Person.call(this,name,age);
this job=job;
}
Worker.prototype=new Person();
work.prototype.constructor=Worker;
let w=new Worker();
w.showName();
w.showAge();
</script>
```
ES6面向对象的写法
<script>
class Person{
constructor(name,age){
this.name=name;
this.age=age;
}
showName(){
console.log(this.name)
}
showAge(){
console.log(this.age)
}
}
let p=new Person('lisi',22)
p.showName();
p.showAge();
</script>
ES6面向对象(继承)
```
<script>
class Woker exteds Person{
constructor(name,age,job){
super(name,age);
this.job=job;
}
showJob(){
console.log(this.job)
}
let w=new Worker('blue',18,'老板')
w.showName();
w.showAge();
w.showJob();
}
</script>
```
总结
ES6中 class:类声明,constructor:构造函数,extends:继承 ,super:父类/超类