JavaScript
文章平均质量分 55
小乒和小乓呀
这个作者很懒,什么都没留下…
展开
-
class详解以及面向对象继承
class抽象:抽取相似的功能,归为一类类:专业点说法就是一组具有相同属性和行为的对象的抽象,只看这个貌似不太好理解,怎么理解这个类呢?以我们前边的代码为例,function Person 这个就是一个类,我们把拖拽所需要的常用功能都封装在这个类中,每次需要需要使用到拖拽这个功能的时候,就实例化这个类,它会给我生成 一个 drag 对象,通过该对象我们就实现了拖拽这个功能。类:构造函数和原型的集合体在 ES6 中,虽然有了 class 的语法,但是还是有别于传统语言(Java) 中的类原创 2021-03-26 22:32:20 · 171 阅读 · 0 评论 -
设计模式(观察者模式)
用class实现观察者模式当对象间存在一对多关系时,则使用观察者模式(Observer Pattern)。比如,当一个对象被修改时,则会自动通知它的依赖对象。观察者模式属于行为型模式。事件池 :events监听器 :on解除监听 :of触发器 :dispatchclass Event { events = {} // 事件池记录所有的相关事件及处理函数 /* 形式 events = { "click":[f1,f2,f3原创 2021-03-26 22:04:53 · 125 阅读 · 0 评论 -
es5中的面向对象继承
ES5面向对象继承先上代码//定义一个方法(名字大写--稍后会new一下)function Person(name,age){ this.name = name; this.age = age;}//Person原型上挂载sayName方法Person.prototype.sayName = function(){ console.log(this.name);};//Person原型上挂载sayAge 方法Person.prototype.sayAge = f原创 2021-03-26 21:51:01 · 135 阅读 · 0 评论 -
js面向对象概念篇
概念什么是对象对象就是一个封装了数据(属性)和方法的集合体。什么是面向对象程序设计(Object Oriented Programming)面向对象,英文名字叫 Object Oriented,是一种编程方法。是和面向过程相对应的。面向对象和面向过程我们以吃饭这件事来看看什么是面向对象,什么是面向过程。对于吃饭这件事来说我们通常有两个解决方案:点外卖和自己做。这俩方案中,点外卖就是面向对象,而自己做就是面向过程。具体对比如下:在面向过程的吃饭中,我们想要填饱肚子,需要自己亲自下厨原创 2021-03-26 21:27:54 · 110 阅读 · 0 评论 -
基于 Proxy 的数据代理
先上代码//首先定义对象let data = { name: "mt", age: 8, price: 9000}// let proxy = new Proxy(target, handler);// target 是用Proxy包装的被代理对象(可以是任何类型的对象,包括原生数组,函数,甚至另一个代理)// handler 是一个对象,其声明了代理target 的一些操作,其属性是当执行一个操作时定义代理的行为的函数。let proxyData = new P原创 2021-03-26 21:01:30 · 509 阅读 · 4 评论 -
JavaScript 数据劫持总结
数据劫持方法最近空余时间复习了下JavaScript;做为学习总结 !1、对象内自带的set和get方法数据劫持、//首先我们先定义一个对象let obj = { $name: "张三", get name(){ // 获取 name 属性时触发 //console.log("想要获取name属性"); return this.$name;// 想要让 obj 在获取name 属性时,拿到的值 }, set name(newVal)原创 2021-03-26 20:52:15 · 2626 阅读 · 3 评论 -
js 实现拖拽(面向对象方式实现)
JavaScript面向对象方式书写拖拽类拖拽功能的实现原理:(直接拿走!)<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible"原创 2021-03-01 18:25:19 · 414 阅读 · 3 评论 -
JavaScript
JavaScript 高阶总结-1es 6 基础巩固1、[let](https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Statements/let)2、块级作用域 if3、块级作用域-for4、let和var的区别5、常量[const](https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Statements/const)6、解构赋值 [let原创 2021-03-01 18:00:26 · 197 阅读 · 1 评论