自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

糖醋闷油瓶的博客

星垂平野阔,月涌大江流。

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

原创 CATRIHTEXT-一个灵活的富文本编辑器

TITLE : CATRIHTEXTDESC : 一个灵活的富文本编辑器文件结构:1.catRichText.base.js-富文本编辑的基础,提供了富文本最为基础的能力2.catRichText.tool.js-基于base的工具方法提供者3.catRichText.main.js-基于base,tool的真正的自定义的富文本组件4.catRichText.css-自定义富文本组件的样式库5.demo.html-调试页面内部依赖结构:main(top) -> too

2021-10-14 13:33:51 139

原创 YouCat网站搭建

近期在创业开发一个宠物版的网站,记录一下开发流程,仅供参考。首先是技术选型:前端 ElementUI + 后端 express + 数据库 mysql + 服务器 pm2选型原因:因为我熟悉js,另外比较不喜欢Spring的繁琐配置,所以选择了express框架。当然目前缺点已经显现出来了,太慢了!不过还没到瓶颈,加钱增加服务器配置即可,暂时不用担心。先聊一下目录结构:其中:config.js:所有的配置,例如:文件存储地址等routes:服务端js所在目录,类似于java的

2021-04-14 14:32:01 181

原创 cat-vue

基于Vue2.0的灵活UI组件库——cat-vue

2020-12-23 16:30:55 146

转载 KMP算法

KMP算发

2020-04-27 14:01:01 113

转载 同源策略与CORS

同源CORS

2020-04-15 17:59:09 98

转载 建立自己的React

建立自己的React

2019-12-27 15:20:37 85

原创 隐藏式下载

//下载iframe,隐藏式下载if ($("#down_iframe").length == 0) { let download_iframe = document.createElement("iframe"); download_iframe.id = "down_iframe"; document.body.appendChild(downloa...

2019-12-11 14:22:33 141

原创 大文件展示的一些想法

大文件展示的一些想法:大文件展示的阻力:1.文件太大無法放入内存中;2.http有時間限制想法:1.判斷文件是否過大,如果過大進入大文件處理程序2.在大文件的情況下,http的請求每次只發送一個適量大小的返回值,同時有字段告知前端是否文件傳送完畢了,如果傳送完畢則結束,如果沒有則循環調用該接口,直到文件傳送結束位置。3.前端需要傳送目前爲止文件讀到哪裏了,後端需要根據位置讀取文件下面的内容...

2019-12-11 11:35:11 116

原创 如何判断浏览器(别人那里看来的,可用)

isWhichBrowser() { var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串 var isOpera = userAgent.indexOf("Opera") > -1; //判断是否Opera浏览器 var isIE = userAgent.indexOf("co...

2019-12-09 14:00:40 548

原创 catpack

catpack一个简单的前端服务器与打包工具。目前功能很简单,以后慢慢加吧。写这个的原因是,觉得前端现在要学的太多了,前端就应该用前端的东西解决。...

2019-10-24 16:50:10 312

原创 bind方法的简单js实现

/** * The bind() method creates a new function that, when called, * has its this keyword set to the provided value, * with a given sequence of arguments preceding any provided when the new funct...

2019-10-15 16:18:28 128

原创 通过localStorage实现页面通信的方法

/** * @param {Object} s 页面之间通信的标识符,需要通信的页面之间该标识符必须一致 * @param {Object} f 触发执行的方法(本页面需要被触发的方法) * 该方法在需要通信的每个页面上都必须调用 */function pagesCommunication(s, f) { //监听事件,内部调用传入的方法 var listenerFun = func...

2019-10-11 10:53:58 199

原创 Vue简明教程

Vue教程现在网上有很多,我这边的只是最基础的Vue知识,以及他们实现的原理。http://carlostang.coding.me/Vuejiaoxue/

2019-09-26 13:51:39 127

原创 关于10亿数字里面查询出最大的N位数的代码实现

问题:在10亿个数字里面,找出最大的前N个数字。代码:/** * 获取TopN * @param {*} arr 原始数组 * @param {*} topN 需要获取最大值的数量,正整数 */function getTopN(arr, topN) { //链表结构,用来存储topN的信息 //链表结构更容易删除插入 //链表内部元素的结构 {val:0...

2019-07-03 13:38:15 324

原创 设计模式—策略模式

今天我们来讲策略模式:策略模式就是见人说人话,见鬼说鬼话。不同的情况下,用不同的算法(实例)统一的情景接口:interface Strategy{ say();}说人话与说鬼话情景以及操作://见人情景class StrategyPerson implements Strategy{ say(){ return "人话"; ...

2019-06-11 19:23:39 127

原创 设计模式—备忘录模式

假期;两天没有更新,因为懒!今天我们来了解备忘录模式。其实在备忘录模式里面,当你的状态只有当前与之前两种的时候,Caretaker其实可以没有,直接由Memento来进行set与get的操作就可以了。备忘录模式和我们在现实里面的备忘十分相似。或者说和存档十分的相似。一个备忘录(存档)需要有获取存档,设置存档的基本操作(Originator)。而存档这个本身的档案需要有一系列的数据单...

2019-06-10 09:43:12 143

原创 设计模式—组合模式

端午快乐!!!过节,所以晚了点。今天我们讲组合模式!组合模式看起来是不是觉得和建造者模式很像!确实很像,但是却不是。建造者模式像是一个端午节粽子礼包,你用肉粽子,甜粽子等等将这个礼包装满了,这是建造者模式。而组合模式则是你在网上统一挑选粽子礼包,虽然都是粽子礼包,但是礼包分为不同的种类,不同种类的礼包组合成了名为粽子礼包的大选项。套用书本的知识:组合模式,有点树的意思。...

2019-06-07 23:11:59 132

原创 设计模式—命令模式

废话不多说:命令模式顾名思义:就是通过命令来进行方法的调用,业务的处理。看以上的uml图,你会觉得十分难看懂,一个简单的命令怎么生出那么多东西呢!!!!其实我一开始也没看懂,看到代码后也觉得是脱裤子放屁——多此一举。现在我也觉得是这样。我来用自己的思考来讲一讲命令模式:1.既然是命令那么,自然有命令类(Command)2.使用命令的人需要知道有什么命令3.命令需要被处理(Rece...

2019-06-06 11:51:49 121

原创 设计模式—状态模式

老样子:其实状态模式怎么说呢:就是这样,当然你也可以写上千行的if语句,不过很难维护啊!!!!继续提示:依赖倒转原则状态抽象类:interface State{ static handle(String state);}具体实现了:ConcretreStateA implements State{ static handle(String s...

2019-06-05 11:18:50 117

原创 设计模式—享元模式

之前在讲单例模式的时候,我就提到过单例模式和享元模式很类似,今天我们就来讲一讲享元模式。享元模式其实理解起来很简单:能共享的共享(一个实例对象),不能共享的自用(多个实例对象)再次强调:依赖倒转原则享元模式很像现在养二胎。假设现在你有两个孩子,一个七岁,一个五岁。那么七岁孩子的衣服,玩具就可以和五岁的孩子共享,不需要买新的。但是吃的零食则需要额外进行购买,这些是不能共享也无法共享的。...

2019-06-04 09:43:22 83

原创 设计模式—中介者模式

在之前,我们讲述了代理模式,今天我们将讲解一下中介者模式。依旧是一个提醒:依赖倒转原则中介者模式其实和代理模式很像,都是通过一个额外的类进行调用。中介者模式其实和字面的意思听起来很是相似,例如你买房子找中介,你和卖房子的人之间的交互都是通过中介来实现的,中介者模式也是这样。即当一个非中介者想要和另一个进行交互的时候,它需要通过调用中介者进行。所以在类里面,两个非中介者需要知道中介者这...

2019-06-03 10:17:29 130

原创 设计模式—代理模式

废话不多说:什么是代理模式?代理在百度解释里面的意思:暂时代人担任 某单位的负责职务,因此显然意见,被代理者的功能代理者都需要拥有。同时使用者直接面对的是代理者而不是具体的被代理者。依赖倒转原则:依赖接口编程!对象抽象类:interface Subject{ request();}被代理类:interface ConcreteSubject implements Su...

2019-06-02 10:37:41 93

原创 设计模式—观察者模式

观察者模式,对于前端的朋友这个词估计会听到很多,毕竟vue就是运用了观察者模式。依旧是老样子,定义,uml图:依旧是老生常谈的一个概念:依赖倒转原则(依赖接口进行编程)在写代码之前,我们先来聊聊观察者模式,这样便于理解。根据定义,我们可以看到在观察者模式里面一共有两个角色,一个是被观察的对象,一个是观察对象。当被观察的对象某些状态发生改变的时候它要去通知观察的对象,让观察对象进行相应的...

2019-06-01 10:58:55 110

原创 设计模式—原型模式

原型模式依旧属于创建者模式依旧先看定义,在看UML图是不是感觉看起来很蒙逼?其实原型模式最重要的就是克隆这个操作了。原型模式创建一个对象的方式不是new而是实例对象本身的复制!(这里和JS中的prototype有些不同)来看代码吧先:原型类的接口(依赖倒转原则:依赖接口编程):interface Prototype{ Prototype clone();}原型的具体...

2019-05-31 09:53:01 94

原创 设计模式—工厂模式与抽象工厂模式

工厂模式与抽象工厂模式都属于创建型模式两者一般会在书籍里面分开来讲,但是我觉得两者其实在本质上没有什么大的区别,反而有一种互通的地方,因此我们会把它们放在一起。老样子,我们来看他们的定义与UML图。看出来有什么相似的地方了么?其实两个模式都是一样的,只是抽象工厂模式将抽象更进了一步,什么都用抽象,在具体的客户端调用的时候也用抽象来调用。而工厂模式就是有什么用什么,不来虚的。继续提...

2019-05-30 09:36:07 128

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

建造者模式属于创建型设计模式,它还是为了用来创建一个对象。首先来看看它的定义:然后我们来看看它的UML图:在这里我们继续强调为什么会有一个Builder抽象接口,因为根据依赖倒转原则,我们应该面向接口编程。建造模式就相当于搭积木,你想得到一个具体的东西,比如一个积木大楼,那么你就要一部分一部分的先建造然后整合在一起称为一个积木大楼。在建造模式使用的时候,我们应该知道最后我们需要的实例...

2019-05-29 10:22:31 104

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

设计模式分为两种类型:1.创建型模式:这些设计模式提供了一种在创建对象的同时隐藏创建逻辑的方式,而不是使用 new 运算符直接实例化对象。这使得程序在判断针对某个给定实例需要创建哪些对象时更加灵活。2.结构型模式:这些设计模式关注类和对象的组合。继承的概念被用来组合接口和定义组合对象获得新功能的方式。单例模式属于创建型模式首先我们来看看单例模式的定义:通过类的方法获取到唯一的一个实...

2019-05-28 09:34:08 79

原创 设计模式—六大原则

设计模式(Design pattern)代表了最佳的实践,通常被有经验的面向对象的软件开发人员所采用。设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案。这些解决方案是众多软件开发人员经过相当长的一段时间的试验和错误总结出来的。设计模式是一套被反复使用的、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问...

2019-05-27 09:49:44 111

原创 HTML+CSS入门

网上的基础入门一堆,大部分都是给你一堆书籍,让你去看。其实入门就是入门,入门就是简单而明确,下面就是我自己整理的一些入门知识:

2019-04-28 10:54:03 104

转载 带你彻底弄懂Event Loop(转载)

带你彻底弄懂Event Loop

2019-04-19 14:19:36 421

原创 组件中如何将html中的表达式变成代码执行

html内的模版如何变成代码执行

2019-04-19 11:14:52 253

原创 一些简单的正则小题目(含个人解答)

1 . 完成 extname 函数,它会接受一个文件名作为参数,你需要返回它的扩展名。例如,输入 emoji.png,返回 .png。const extname = (filename) => { /* TODO */ var matchList = filename.match(/.+(\.[a-zA-Z]+)/);//通过正则()获取后缀 return matchLis...

2019-04-18 14:04:01 399

原创 如何在组件开发中实现方法形参位置随意却依然能够正确执行

组件中如何防止调用者形参乱传入

2019-04-17 15:41:41 100

翻译 多线程的简单介绍(翻译)

现代电脑已经具有同一时间执行多个操作的能力。由于硬件的发展以及更智能的操作系统的支持,我们的程序可以执行反馈的更快。由于这个巨大的能力(同一时间执行多个操作),编程变得十分神奇同时又十分复杂。这项巨大的能力使得你必须去理解电脑内部的执行原理。在第一节中,我将解开多线程的一角,讲解多线程这项如此有魔力的东西。进程与线程:以正确的方式命名事物现代的操作系统可以在同一时间执行多个程序。那就是为什么...

2019-04-15 14:54:19 479

转载 Flex布局解析(转载)

弹性布局解析

2019-04-02 20:53:33 91

翻译 如何在java中实现线程间的通信【翻译】

虽然在通常情况下每个子线程仅需要完成自己的任务即可,但是有时候我们会需要不同的线程一起协作解决某个问题,此时便需要进行线程之间的通信了。以下的这些方法或者类将会在接下来的内容中提及:hread.join(), object.wait(), object.notify(), CountdownLatch, CyclicBarrier, FutureTask, Callable, etc.我将...

2019-02-20 11:22:25 231

转载 解谜英语语法【转载】

原文地址

2019-01-02 16:51:04 309

原创 基于jQuery的前端组件(持续更新中)

http://merlinlock.coding.me/CATUI/

2018-12-03 17:19:26 454

原创 页面的表单提交

< input/>定义和用法name 属性规定 input 元素的名称。name 属性用于对提交到服务器后的表单数据进行标识,或者在客户端通过 JavaScript 引用表单数据。注释:只有设置了 name 属性的表单元素才能在提交表单时传递它们的值。...

2018-11-22 21:07:59 117

原创 MAC下maven的安装

step1:官网下载maven,解压到任意自己配置的文件夹下,我下载后解压到的是桌面step2:在自己所处的文件目录下,建立.bash_profile文件,有的话则可以不用新建。(~/.bash_profile:每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件.)shell命令:to...

2018-11-06 13:48:31 115

clipboard.js

clipboard.js 的主文件,直接下载然后引用就可以了。clipboard.js

2018-06-26

空空如也

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

TA关注的人

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