自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Florenza的博客

助人助己

  • 博客(134)
  • 资源 (1)
  • 收藏
  • 关注

原创 解决部分浏览器上传文件类型fileType为空

搜狗浏览器部分电脑上传文件后文件类型 file.type 为空 (组件上传用的 ElementUI)

2024-08-16 11:11:34 462

原创 设计模式-享元模式

享元模式(英语:Flyweight Pattern)是一种软件。它使用共享物件,用来尽可能减少内存使用量以及分享资讯给尽可能多的相似物件;它适合用于只是因重复而导致使用无法令人接受的大量内存的大量物件。通常物件中的部分状态是可以分享。常见做法是把它们放在外部数据结构,当需要使用时再将它们传递给享元。

2024-04-22 21:33:46 628

原创 设计模式—门面模式

它的主要目的是提供统一的接口来访问子系统中的多个接口,从而简化客户端与复杂子系统之间的交互。在门面模式中,一个门面类充当中介,为客户端提供一个简化了的访问方式,而不需要了解子系统的具体细节。这样不仅降低了客户端与子系统之间的耦合度,还使得子系统的使用更加方便。

2024-04-16 21:44:32 1218

原创 前端性能优化-Table渲染速度优化

标题:教务系统排课页面性能优化总结报告随着学校信息化建设的不断推进,教务系统的稳定性和效率直接影响到学校的教学管理工作。其中,排课功能作为教务系统的核心模块,其页面性能直接关系到教务人员的工作效率及用户体验。近期,我们对教务系统排课页面进行了深度的性能优化工作,现将相关优化过程和成果进行总结。标题:教务系统排课页面性能优化总结报告随着学校信息化建设的不断推进,教务系统的稳定性和效率直接影响到学校的教学管理工作。其中,排课功能作为教务系统的核心模块,其页面性能直接关系到教务人员的工作效率及用户体验。

2024-04-01 23:49:12 1054

原创 设计模式—组合模式

组合模式(Composite Pattern)又称为合成模式、部分-整体模式(Part-Whole),主要用来描述部分与整体的关系。定义:将对象组合成树形结构以表示“部分-整体”的层次结构,使用户对单个对象和组合对象的使用具有一致性。

2024-03-21 22:15:18 1237

原创 设计模式—桥接模式

桥接模式是将抽象部分与它的实现部分分离,使它们都可以独立地变化。它是一种对象结构型模式,又称为柄体(Handle and Body)模式或接口(Interfce)模式。

2024-03-06 23:07:41 1053

原创 设计模式—适配器模式

适配器模式(有时候也称包装样式或者包装)将一个类的接口适配成用户所期待的。一个适配允许通常因为接口不兼容而不能在一起工作的类工作在一起,做法是将类自己的接口包裹在一个已存在的类中。

2024-03-03 18:31:19 804

原创 鸿蒙ArkTs开发问题总结

现阶段鸿蒙ArkTs开发主要分为两个版本 HarmonyOS3.x.x(API9)及HarmonyOS4.x.x(API10) 一下简称为 API9,API10官方现在所有案例均以 HarmonyOS4.x.x(API10) 为基础请注意选择分支。

2024-02-29 18:33:30 797

原创 鸿蒙ArkTs开发WebView问题总结

解决:在加载webview的controller中加入.官方文档。

2024-02-28 10:16:30 1881

原创 设计模式——建造者模式

建造者模式(Bulider Pattern)是将一个复杂对象的构建过程与它的实现表示分离,使得同样的构建过程可以创建不同的表示,属于创建型模式。使用创建者模式对于用户而言只需要制定需要建造的类就可以获得对象,建造过程及细节不需要了解。建造者模式适用于创建对象需要很多步骤,但是步骤的顺序不一定固定。如果一个对象有非常复杂的内部结构(很多属性),可以将复杂对象的创建和使用进行分离UML图。

2024-02-22 19:21:59 624

原创 设计模式——原型模式

原型模式是一种创建型设计模式,它允许一个对象创建另一个可定制的对象,而无需了解如何创建这个对象的细节。这种模式的核心在于对象拷贝,即通过将一个原型对象传给要创建的对象,然后由这个要创建的对象通过请求原型对象拷贝自身来实施创建。小麻雀icknn/设计模式练习 - Gitee.comJava中Object类是所有类的根类,Object 类提供了一个clone()方法,该方法可以将一一个Java对象复制一份,但是需要实现clone的Java类必须要实现一个接口Cloneable。

2024-02-21 19:46:50 1253

原创 设计模式——装饰器模式

装饰器模式(Decorator Pattern) 也称为包装模式(Wrapper Pattern) 是指在不改变原有对象的基础之上,将功能附加到对象上,提供了比继承更有弹性的替代方案(扩展原有对象的功能),属于结构型模式。装饰器模式的核心是功能扩展,使用装饰器模式可以透明且动态地扩展类的功能。模式特点装饰对象和真实对象有相同的接口。这样客户端对象就能以和真实对象相同的方式和装饰对象交互。装饰对象包含一个真实对象的引用 (reference)装饰对象接受所有来自客户端的请求。

2024-02-20 18:50:20 609

原创 设计模式——工厂模式

​ 工厂顾名思义就是创建产品,根据产品是具体产品还是具体工厂可分为简单工厂模式和工厂方法模式,根据工厂的抽象程度可分为工厂方法模式和抽象工厂模式。该模式用于封装和管理对象的创建,是一种创建型模式。

2024-02-19 18:04:58 890

原创 设计模式简介

设计模式是对大家实际工作中写的各种代码进行高层次抽象的总结,其中最出名的当属 Gang of Four(GoF)的分类了,他们将设计模式分类为 23 种经典的模式,根据用途我们又可以分为三大类,分别为创建型模式、结构型模式和行为型模式。UML,全称为Unified Model Language,即统一建模语言,是由一整套图表组成的,为面向对象系统的产品进行说明、可视化和编制文档的一种标准语言。UML 代表了一组最佳工程实践,这些实践已被证明在大型复杂系统的建模中是成功的。

2024-02-18 18:32:31 1315

原创 Vant 环形进度条Canvas 层级问题

【代码】Vant 环形进度条Canvas 层级问题。

2023-12-15 10:02:36 1126 1

原创 nginx图片资源管理转发

nginx做静态资源管理

2023-11-08 18:56:32 485

原创 uni-app引入Vant 下拉菜单dropdown选择过后边的之后再选择前边的选项出现点击无效

找到 wxcomponents/vant-weapp/dropdown-item/index.wxml打开后找到after-enter和after-leave这两个事件,并改为驼峰命名:afterEnter和afterLeave即可!有遇到问题的小伙伴可以去试一试,看下是否能够解决!

2023-03-25 19:22:48 1020 1

原创 js手写—实现new

【代码】js手写—实现new。

2022-12-11 22:24:09 344

原创 手写js——继承

创建了一个新的实例对象,并且执行子类里面的代码,而子类里面用父类.call改变this指向,也就是说把this指向改成了指向新的实例,所以就会把SuperType里面的this相关属性和方法赋值到新的实例上,而不是赋值到SupType上面。调用了两次父类的构造函数,第一次给子类的原型添加了父类的name, arr属性,第二次又给子类的构造函数添加了父类的name, arr属性,从而覆盖了子类原型中的同名参数。,其背后的思路是使用原型链实现对原型属性和方法的继承,而通过借用构造函数来实现对实例属性的继承。

2022-12-11 22:20:40 1187

原创 算法刷题—希尔排序

希尔排序(Shell's Sort)是插入排序的一种又称“缩小增量排序”(Diminishing Increment Sort),是直接插入排序算法的一种更高效的改进版本。希尔排序是非稳定排序算法。该方法因 D.L.Shell 于 1959 年提出而得名。希尔排序是把记录按下标的一定增量分组,对每组使用直接插入排序算法排序;随着增量逐渐减少,每组包含的关键词越来越多,当增量减至 1 时,整个文件恰被分成一组,算法便终止。

2022-12-09 18:58:57 175

原创 手写JS—深拷贝

一个引用对象一般来说由两个部分组成:一个具名的Handle,也就是我们所说的声明(如变量)和一个内部(不具名)的对象,也就是具名Handle的内部对象。它在Manged Heap(托管堆)中分配,一般由新增引用对象的New方法是进行创建。深拷贝是指源对象与拷贝对象互相独立,其中任何一个对象的改动都不会对另外一个对象造成影响。比较典型的就是Value(值)对象,如预定义类型Int32,Double,以及结构(struct),枚举(Enum)等。一般简单来说我们都会这么写但是 会有循环引用的问题。

2022-12-08 18:20:26 2375

原创 手写js-防抖,节流

以最后一次操作为准开始计时器 此操作分为 立即执行/非立即执行即多次触发事件,第一次会立即执行函数,之后在设定wait事件内触发的事件无效,不会执行类似于百度属于的首字母去发请求(立即执行)后续字母则遵循防抖规则htmljsjs面试手写: js手写面试 - Gitee.com 相当于玩游戏有一个技能cd 在cd没好的时候触发不了 完整案例代码 htmljsjs面试手写: js手写面试 - Gitee.com

2022-12-07 19:43:21 1798 4

原创 算法刷题—快速排序

快排的中心思想是分治 算法步骤其单趟排序的思路是:取区间中最左或最右边的元素为key,定义两个变量,这里假设是p和q,q从区间的最右边向左走,找到比key小的元素就停下。p从最左边向右走,找到比key大的元素就停下。然后交换p和q所指向的元素。下面是p与q单次交换的示意图: 方法二:

2022-12-06 18:53:13 365

原创 算法刷题—插入排序

java 插入排序

2022-12-06 12:17:25 286

原创 算法刷题—选择排序

选择排序

2022-12-04 18:14:24 108

原创 算法刷题—冒泡排序

冒泡排序

2022-12-04 18:09:14 127

原创 算法刷题——二叉树部分操作(翻转二叉树,平衡二叉树,最大深度)

【代码】算法刷题——二叉树部分操作(翻转二叉树,平衡二叉树,最大深度)

2022-12-01 18:51:46 360

原创 vue3 ElementUI Switch @changechange事件初始化会被调用

在vue3 Element-puls 中 初始化的时候@change会自动被调用。使用 :beforeChange 这个属性 但是这个属性。传值 如果直接传值依然会自动调用,

2022-11-29 21:48:51 3705

原创 算法刷题—二叉树遍历

中序遍历首先遍历左子树,然后访问根结点,最后遍历右子树。若二叉树为空则结束返回,否则:(1)中序遍历左子树(2)访问根结点(3)中序遍历右子树即最左侧优先 然后 是 最后的叶子节点开始进行排列上图 中序遍历结果应为 [4,2,7,5,8,1,3,6]

2022-11-24 23:07:03 130

原创 算法刷题—树

树(Tree)是n(n>0)个节点的有限集,n=0称为空树。1.有且仅有一个特定的称为根(Root)的结点;2.当n>1时,其余节点可以分为m个(m>0)互不相交的T1,T2.....Tm其中每一个集合本身也是一课树并且称为根的子树(SubTree)在一棵完整的树中,根节点时唯一的;子树的个数是不限的但是也是互不相交的。

2022-11-23 20:33:06 360

原创 算法刷题— 字符串解码

如果是 "]" 证明我们本次的'[xxxxxx...xxx]" 已经结束,我们取出 stringStack的顶部栈中的字符 并取出 integerStack 中顶部的数字number为我们遍历次数来拼接字符串最后 res拼接完成本次 "[xxxxxx..]"中的字符串。的先进后出原则来进行存储, 首先创建两个栈 一个栈用来存放 循环遍历的次数,另一个用来存储 本次循环遍历 拼接的值。如果是"[" 证明上一次的存储字符已经结束,我们将变量res字符放入stringStack中并将 res清空。

2022-11-21 17:36:50 190

原创 算法刷题——合并两个有序链表

3.当两者都不为空时,先指向l1和l2链表的第一个节点,若l1.val

2022-11-15 12:25:36 142

原创 算法刷题——找到所有数组中消失的数字

因为 是 1~n 之间所以 n不会大于 nums.length+1 所以 我们可以遍历数组让 nums[nums[i]]-1 去加一个数字 n 再用 nums[num[i]]-1 % n 取出 原坐标 因为 在循环中会改变数组 所以要取 %n。

2022-11-15 10:43:33 103

原创 算法刷题——移动“0“

等于不等于0 的数组元素 将数组重新排列的同时 并记录了有多少个不为0 的数组元素。2、遍历第二遍 以 j 的个数为起始的剩余全部元素变为0。1、使用双指针 通过。

2022-11-13 17:25:11 124

原创 算法刷题——合并两个有序数组

通过比较 两个数组同一位置的元素 如果元素小则放到新的数组当中,在比较 大的数组中的下一位直到比较完成指定数量。首先我们可以用java自带的排序算法来实现。

2022-11-12 00:03:32 1289

原创 算法刷题——两数之和

通过记录 计算后的值来标记已有记录 ,再比对targert 是否在已有的map集合中的方法来寻找结果。遍历数组两边寻得结果相同的值并把key 返回出来;时间复杂度 O(n^2)时间复杂度 O(n)

2022-11-11 16:40:43 111

原创 算法刷题——爬楼梯

本题为LeetCode第70题爬楼梯,题目如下:假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?当剩下个台阶的时候只有种方法当剩下个台阶的时候只有种方法1==>1 或者 2当剩下个台阶的时候只有种方法1==>1==>1 或者 1==>2 或者 2==>1当剩下个台阶的时候只有种方法推到 可知所以 可以推出。

2022-11-11 11:54:19 1259

原创 设计模式——单例模式

存在问题: 懒汉模式 按需初始化,但是 线程不安全 可以通过synchornized 但是效率下降了。虚拟机加载class只加载一次,所以Hodler 和instance也只加载一次。单例模式下必须构造方法为私有其他类获取实例必须通过 getInstance方法调用。(根据需要,也有可能一个线程中属于单例,如:仅线程上下文内使用同一个实例)* 类加载到内存,实例化一个单例,jvm保证线程安全。通过单例模式的方法创建的类在当前进程中只有一个。单,属例模式于创建类型的一种常用的。* 简单实用,推荐使用。

2022-10-24 00:18:27 142

原创 失去焦点和点击事件的执行顺序 onblur/onclick

再点击联想词的时候 跳转 但是 联想词的外框设置了失去焦点时候消失所以 点击联想词不生效。在点击联想词的时候使用 onmousedown。vue项目中blur和click事件冲突。

2022-09-05 15:31:36 1206

原创 nuxt3 与pinia之间的问题

是因为 配置文件中没有 vue3 的依赖 需要安装vue3 在 package.json。问题一:在nuxt3 中安装pinia时候如果只配置 pinia会报 "peer vue@"^3.2.37" from @nuxt/vite-builder@3.0.0-rc.8"问题二:Cannot find module 'xxxx\node_modules\pinia\dist\pinia.mjs'...

2022-08-28 18:40:27 3179

vue3源码之createApp

vue3源码之createApp

2022-03-10

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除