什么是面向对象
面向对象: 是一种思维方式 只注重结果
面向过程
面型过程: 注重过程
面向对象与面向过程两者之间的关系
面向对象其实就是对面向过程进行封装
原型对象
什么是原型对象:任何函数在创建的时候系统会自动给我们创建一个对象 我们称之为原型对象
原型对象的作用:解决内存浪费+变量污染
原型对象三个相关属性: 构造函数 原型对象 示例对象 三者之间的关系
prototype:属于构造函数指向原型对象
__proto__
:属于实例对象指向原型对象constructor:属于原型对象指向构造函数
// 构造函数
function Person(name, age) {
this.name = name
this.age = age
}
// 原型对象
Person.prototype.eat = function () {
console.log('小吴你好')
}
Person.prototype.learn = function () {
console.log('你好吗?小吴')
}
// 实例对象
let p = new Person('小吴', 18)
// 验证 构造函数 原型对象 实例对象三者之间的关系
console.log(p.__proto__.constructor) // Person
console.log(p.__proto__ === Person.prototype) // true
静态成员和实例成员
静态成员:函数的属性
实例成员:实例对象的属性