摘要: // es6 模式 内置 function* myIterator() { yield 1; yield 2; yield 3; } for (const iterator of myIterator()) { console.log(iterator); } // es5 手动 function 阅读全文
posted @ 2023-02-02 16:45 hpd 阅读(5) 评论(0) 推荐(0) 编辑
摘要: 观察者模式与发布-订阅模式的区别 观察者模式:发布者会直接联系订阅者 发布-订阅模式:发布者不和订阅者进行直接联系,而是通过第三方进行联系(vue响应式原理,evenbus) 阅读全文
posted @ 2023-02-02 15:35 hpd 阅读(16) 评论(0) 推荐(0) 编辑
摘要: 在js行为型设计模式中。策略模式与状态模式大同小异。下面,来说说它的区别。 相同点:都会使用行为函数封装行为,通过委托来分发行为。 不同点:策略模式中的行为函数会更加割裂,彼此没有任何关系。而状态模式中的行为函数与状态主体之间存在联系,由状态主题把他们串在一起(行为函数内部会对主体内容有影响),这也 阅读全文
posted @ 2023-02-02 11:43 hpd 阅读(40) 评论(0) 推荐(0) 编辑
摘要: 装饰器模式:在不改变原有对象的结构下,通过对其包装拓展,使原有对象可以满足用户的更复杂要求。 适配器模式:把一个类的接口变换成客户端所期待的另一种接口。 代理模式:在某种情况下,出于种种考虑/限制。一个对象不能直接访问另一个对象,需要通过第三方代理后才能继续访问。(比如FQ上网就是代理模式) 阅读全文
posted @ 2023-02-02 10:17 hpd 阅读(22) 评论(0) 推荐(0) 编辑
摘要: 工厂模式:就是将创建对象的过程封装。封装不变的,保留入参迎接变化。 抽象工厂模式:在超级工厂的基础上创建其他工厂,保留其他工厂不变的公共部分,其他工厂在此基础上自由拓展。保持开放封闭原则,即使用抽象类,可拓展,不可直接修改。 共同点:分离一个系统中变与不变的部分。 区别:场景复杂度。抽象工厂的复杂度 阅读全文
posted @ 2023-02-01 11:43 hpd 阅读(17) 评论(0) 推荐(0) 编辑
摘要: Error: getaddrinfo ENOTFOUND 的相关解决办法 1 https://www.cnblogs.com/eyunhua/p/7993433.html 1 https://codeday.me/bug/20190501/1023865.html 按照以上给出的方法修复,如还是无法 阅读全文
posted @ 2022-10-08 11:07 hpd 阅读(885) 评论(0) 推荐(0) 编辑
摘要: ###可以改变原数组 push pop unshift shift reverse sort splice 其他的方法都无法直接对原数组修改 ###在函数中传参 在js中所有的函数参数都是按值传递的。意味着函数内的参数,如果你直接对它进行修改,是会影响到外部变量的。但是如果你对它重新赋值,是不会对外 阅读全文
posted @ 2021-09-01 12:27 hpd 阅读(35) 评论(0) 推荐(0) 编辑
摘要: 话不多说,先直接上代码 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <meta name="viewp 阅读全文
posted @ 2021-08-24 21:31 hpd 阅读(170) 评论(0) 推荐(0) 编辑
摘要: 函数防抖 在一段时间内,用户对事件函数反复触发,则以最后一次触发为准,且每次触发,都会重新计算这段时间 函数节流 在一段时间内,不管用户怎样触发,事件函数最多只会执行一次(限制了事件的执行周期) 相同点: 都是为了优化js代码的执行频率,提高代码性能 不同点: 函数防抖一般是对用户主动触发事件的处理 阅读全文
posted @ 2020-07-20 21:01 hpd 阅读(8) 评论(0) 推荐(0) 编辑
点击右上角即可分享
微信分享提示