面向对象javascript
作者: 阿蒙 时间: 2020-2-19 标签: JavaScript 浏览: 1159 评论: 0
1. 鸭子类型: 关注对象的具体行为,而不是对象本身。 比如当你需要听到鸭子叫的时候,如果有一只鸡的叫声像鸭子,那么这个时候它便是鸭子。 关注的是HAS-A 而不是IS-A、
2. 多态:将 “做什么” 和 “怎么做” 分开来、不必关注对象的类型。
3. 封装:通过函数作用域模拟封装的特性
3. 原型: 每个构造器都拥有原型。 每个对象都是实例,都拥有__proto__指向它的构造器的原型。 每个对象都有有一个constructor 属性指向它的构造器。 所有对面字面量创造的对象都是Object的实例。 如 var obj = {}; obj.__proto__ === Object.prototype; obj.constructor === Object ;
4. 原型模式: 用于对象的克隆(如继承,实例等)
规则: 1. 所有数据都是对象
2. 获取一个对象是通过克隆一个对象的原型而来,而不是实例化类
3. 对象会记住他的原型
4. 如果对象无法响应某个请求,会将请求委托给它的原型。
5. 继承: 可以通过原型来继承
本文相关标签: 设计模式笔记
发表评论: