前端设计模式——备忘录模式

备忘录模式(Memento Pattern):是一种行为型设计模式,在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。在JavaScript中,可以使用闭包来实现备忘录模式。 备忘录模式通常用于处理用户界面的状态。当用户与应用程序交互时,应用程序会根据用户的输入更改其状态。它可…

ES6_day01

### canvas特性 标签中的文本只有在浏览器下支持canvas标签时才显示 行内块元素 高度设置在标签属性上 ### 填充色设置 ctx.fillStyle="#ff0000" ### 线条颜色设置 ctx.strokeStyle="ff0000" ### 线条粗细 ctx.lineWidth="…

pdf.js 使用

pdf文件能够比较好的保留源格式,传输也比较方便,现PC端浏览器基本都可直接查看pdf文件,只是界面风格不怎么统一,但是手机端查看pdf文件就不能很好的只“预览”,往往都是自动下载到本地再查看,今天分享pdf.js,主要用于在线pdf预览,平时我使用比较多的场景就是培训手册。 我用的是1.1.159,版…

分享我通过 API 赚钱的思路

写在最前 我们经常看到非常多的 API 推荐,但又经常收藏到收藏夹里吃灰,仿佛收藏了就是用了。 很多时候没有用起来,可能是因为想不到某类 API 可以用来做什么或者能应用在哪里。 下面我将我思考的一些方向给到大家,希望我们都能共同致富。 天气类 API 天气预报查询:获取城市的天气实况数据;更新频率分钟…

前端设计模式——外观模式

外观模式(Facade Pattern):它提供了一个简单的接口,用于访问复杂的系统或子系统。通过外观模式,客户端可以通过一个简单的接口来访问复杂的系统,而无需了解系统内部的具体实现细节。 在前端开发中,外观模式常常被用于封装一些常用的操作,以简化代码复杂度和提高代码可维护性。比如,一个用于处理数据的模…

eval有时候也可以用,而且有奇效

eval,一个我曾经避之不及的函数,最近我对它产生了一点新的感触:eval有时候也可以用,有奇效。 一般在使用js进行开发时,是不建议使用eval这类函数的。在JavaScript中,eval可以计算传入的字符串,将其当作js代码来执行。因为它可执行js代码的特性,有可能被第三方利用,传入恶意js代码执…

javascript的基础知识(随缘更新)

1.声明与变量 let声明的变量可以多次赋值 let 变量名 = 值; const修饰叫常量,只能赋值一次,但是引用的值可以改变 var声明的变量可以多次赋值 结论:能用let不用var ,因为作用域的问题 2.基本类型和对象类型 undefined 和 null undefined 指 未定义的对象或…

前端设计模式——委托模式

委托模式(Delegation pattern):将一个对象的某个方法委托给另一个对象来执行,它可以帮助我们将对象之间的关系更加灵活地组织起来,从而提高代码的可维护性和复用性。 在委托模式中,一个对象(称为委托对象)将一些特定的任务委托给另一个对象(称为代理对象)来执行。代理对象通常具有和委托对象相同的…

结构型-代理模式

定义   代理是一个中间者的角色,如生活中的中介,出于种种考虑/限制,一个对象不能直接访问另一个对象,需要一个第三者(中间代理)牵线搭桥从而间接达到访问目的,这样的就是代理模式。 es6 中的代理   es6 的 proxy 就是上面说的代理模式的实现,es6 帮我们在语法层面提供了这个新的api,让我…

前端设计模式——计算属性模式

计算属性模式(Computed Property Pattern):在JavaScript中,可以使用Object.defineProperty()方法来实现计算属性模式,通过get和set方法来计算属性值。 计算属性模式用于将对象的某些属性值与其他属性值相关联。该模式常用于Vue.js等框架中。 计算…