
代码优化
郑立峰
这个作者很懒,什么都没留下…
展开
-
函数式编程学习记录
函数式编程主要概念1.将函数进行科里化使函数可以进行任意函数组合生成新的函数2.通过不同函数的重复组合提高开发效率,进行少代码重复,使代码更清晰1.函数科里化作用:把函数中的参数暂时保存起来,返回一个新的函数目标:addCurry(1,2) // 3addCurry(1)(2) // 3/*** 用递归函数 创建柯里化函数*/ const curry = (fn: Function, ...args: any[]) => { if (args.length >= f原创 2021-04-16 17:28:48 · 214 阅读 · 0 评论 -
ts 装饰器学习总结
装饰器语法没参数 @方法名称有参数 @方法名称(参数)ts装饰器以关键字@开头 必须在class 中装饰器就是一个函数 在ts编译成js时执行1.类装饰器//定义装饰器 const testClass = (params?:any)=>(target:any)=>{ //设置目标类Test value 为装饰器传进来的参数 target.prototype.value = params}// 调用普通装饰器@testClass('测试') class Test原创 2021-04-09 21:18:03 · 453 阅读 · 0 评论 -
图片文件压缩
图片文件压缩成指定尺寸并返回base64 格式1.因业务需求要求前端直接上传base64 图片格式 并大小不能超过2mb2.网上也有很多相关压缩npm包,直接用对自己技术没啥提升。然后就手搓了一个压缩图片,代码如下:/** * 符合封闭开放原则* 封闭FileMethod* 开放FileExecute*//** 文件方法合集 不用看,不要修改 FileMethod 中的方法 */class FileMethod { /** * @param path 路径转Ima原创 2021-04-08 16:09:54 · 310 阅读 · 0 评论 -
前端 模糊 搜索 经验总结
前端交易搜索总结1. 精确搜索优点简单快捷 一行js 代码搞定缺点不支持 拼音搜索 模糊搜索let res = [{name:'123'},{name:'我的名字1'}].filter(array => array.name.match('我'));2. 使用 damerau-levenshtein 模块 距离算法搜索需要先安装 npm 模块 damerau-levenshtein优点支持模拟搜索支持拼音搜索缺点搜索不准确 (致命伤)基本用法import * as l原创 2021-03-03 15:46:48 · 549 阅读 · 2 评论 -
干货记录一下 前端代码优化实用篇
索引优化代码先来看一个简单的例子:需求是星期回显,传1回显星期一,传7回显星期日,其他类推,无效回显空字符串;类似的需求还有回显月份第一种实现方法:switch实现function previewWeek(i){ switch(i){ case 1: return '星期一' break; case 2: return '星期二' ...转载 2020-05-25 09:52:08 · 180 阅读 · 0 评论