当前位置: 首页 > news >正文

网站建设对信息公开的作用昆明关键词优化

网站建设对信息公开的作用,昆明关键词优化,网站推广方案中,简单搜索网页代码相比于使用传统的Object实现补环境框架结构,使用 ES6 的 Class 具有以下优势: 代码维护更方便:Class的语法更简洁直观,方便开发者阅读和维护。组织结构更清晰:Class提供了明确的层次结构,有助于代码的模块…

相比于使用传统的Object实现补环境框架结构,使用 ES6 的 Class 具有以下优势:

  1. 代码维护更方便:Class的语法更简洁直观,方便开发者阅读和维护。
  2. 组织结构更清晰:Class提供了明确的层次结构,有助于代码的模块化管理。
  3. 扩展性更强:Class的继承机制使得扩展功能变得更加容易和自然。
  4. 代码复用率更高:通过继承和方法重用,Class大大提高了代码的复用性。
  5. 继承能力强:Class的继承机制远超传统Object,使得复杂对象的创建和管理更加高效。
  6. 减少重复代码:使用Class避免了传统Object方式中大量重复代码的编写。
  7. 贴近浏览器实现:Class的形式更接近浏览器底层实现,在数据输出上具有特别的优势。

以下是遵循跟浏览器保持一致的 document 继承结构

Object└─ EventTarget└─ Node└─ Element└─ HTMLElement└─ HTMLDivElement└─ ... (其他HTML元素)└─ Document└─ HTMLDocument

以下为框架代码的实现

class EventTarget {// 所有能够监听和触发事件的对象的基类,为 DOM 中的各种元素(如 Node、Element、HTMLElement 等)提供了统一的事件处理接口,使得这些对象可以响应用户交互和其他事件constructor () {this.listeners = {}}addEventListener (type, callback) {if (!this.listeners[type]) {this.listeners[type] = []}this.listeners[type].push(callback)}removeEventListener (type, callback) {if (!this.listeners[type]) returnconst stack = this.listeners[type]for (let i = 0; i < stack.length; i++) {if (stack[i] === callback) {stack.splice(i, 1)return}}}dispatchEvent (event) {if (!this.listeners[event.type]) return trueconst stack = this.listeners[event.type].slice()for (let i = 0; i < stack.length; i++) {stack[i].call(this, event)}return !event.defaultPrevented}
}class Node extends EventTarget {// 提供了基本的树结构操作和与节点相关的功能,所有的 DOM 元素和文本节点等都继承自Nodeconstructor () {super()}
}class Element extends Node {// 这个类里面放的是所有元素的Element类的属性方法和HTMLElement的属性方法,这里将 HTMLElement 的属性方法全部合并到Element中了constructor () {super()}
}class HTMLElement extends Element {constructor () {super()}
}// 一些内置的元素,比如div是来自于HTMLDivElement这个类实例化出来的
class HTMLDivElement extends HTMLElement {constructor () {super()}// 添加特有的属性和方法
}// 一些自定义的元素名,他就会用HTMLUnknownElement这个类实例化出来
class HTMLUnknownElement extends HTMLElement {constructor(tagName) {super()this.tagName = tagName}// 添加特有的属性和方法
}class Document extends Node {constructor () {super()}createElement (tagName) {switch (tagName.toLowerCase()) {case 'div':return new HTMLDivElement()default:return new HTMLUnknownElement(tagName)}}
}class HTMLDocument extends Document {constructor () {super()}
}const document = new HTMLDocument()
console.log(document)
http://www.yayakq.cn/news/453480/

相关文章:

  • mvc6电商网站开发实战温州网站建设维护
  • 传奇世界新开服网站企业级网站开发需求分析
  • 天猫淘宝优惠券网站怎么做艺腾青岛网站建设
  • wordpress站点推荐邢台太行中学地址
  • 不属于c2c网站的是安卓开发工具箱
  • 专业网站开发哪家好凡科建站免费
  • 点击颜色更换网站主题英文外贸发布网站
  • 怎么把网站开发成crx新建的网站 找不到了
  • 江华县网站开发建设项目查询网站
  • 苏州建设招投标网站一个网站开发流程图
  • 建立公司网站要多少钱高端网站制作平台
  • 山东做网站的公司有哪些知名网站建设设计
  • 网站主题和建设营销网站都有哪些
  • 更换网站空间东莞室内设计公司
  • 广西建设局网站首页网站建设声明函
  • 响应式网站建设市场wordpress货币插件
  • 做图网站被告构建一个网站
  • 建设安全监督站的网站怀化网站开发
  • 西部数据网站管理助手苏州建设是哪家公司
  • 广告多的网站wordpress 写php代码
  • h5网站开发流程图维修保养网站开发
  • 珠海网站制作定制app营销的特点与优势
  • 江宁区住房和城乡建设局网站做网站的原理
  • 如何建一个简单的网站在线电子商务网站开发
  • 企业为什么做网站优化推广多种语言网站怎么做
  • 网站和app区别与联系济南在线
  • 外贸建英文网站的重要性浦东网站开发培训
  • 黄岛网站建设价格安徽省建筑业信息一体化平台网
  • 注册免费域名网站分类信息网站手机版
  • 如何让网站自适应屏幕活动宣传软文