面向对象的意义
- 数据结构化:对于计算机,结构化才是最简单的
- 编程应该 简单 抽象
面向对象三要素
继承【子类继承父类】
封装 【数据的权限和保密】
- public: 完全开放
- protect: 对子类开放
- private: 对自己开放
-
减少耦合,不该外露的不外露
- 利于数据和接口的权限管理
- ES6目前不支持,一般认为_开头的属性是private
多态 【同一接口的不同实现】
- 同一个接口,不同的表现
- js应用极少
- 需要结合java等语言的接口,重写,重载功能
- 保持子类的开放性和灵活性
- 面向接口编程
jQuery应用
class JQuery {
constructor(selector) {
// 获取节点列表 转换为数组
let dom = Array.from(document.querySelectorAll(selector))
// 节点列表长度
let len = dom ? dom.length : 0
for (let i = 0; i < len; i++) {
this[i] = dom[i]
}
this.length = len
this.selector = selector || ''
}
append(node) {
}
addClass(name) {
}
html(data) {
}
}
window.$ = function (selector) {
return new JQuery(selector)
}
网友评论