<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
</head>
<body>
<script>
// 1、原型是可以被替换
// function Person() {
// }
// //Person的原型是系统自动以Object构造函数new出对象 作为原型
// // 下面这句话 只是在原型上添加新的属性 原型对象没有被替换掉
// // Person.prototype.run = function () { }
// Person.prototype = {
// leg: 2
// }
// let p = new Person;
// console.log(p.leg);
// 2、替换原型实现继承
// 这里使用原型继承,就是改变了通过原型赋值给了一个新的原型。实现替换元素实现了继承
// 这里其实就是通过赋值操作实现了继承。没那么多复杂的操作。
function Person(name) {
this.name = name;
}
Person.prototype.eat = function () {
console.log(this.name + "eat");
};
function Student(no) {
this.no = no;
}
let p = new Person("李四");
//修改原型实现继承
Student.prototype = p;
let s = new Student();
console.log(p);
console.log(p.name);
console.log(s);
console.log(s.__proto__ == p);
console.log(s.name);
s.eat();
</script>
</body>
</html>
原型继承的一些感想
最新推荐文章于 2024-07-12 16:27:40 发布