一个基于canvas的移动端图片编辑器

插件实现的功能为可页面内初始化载入图片、手动添加手机相册内的图片、或者添加服务器端的图片(服务器端需要开启允许图片跨域)。拥有多种的编辑模式。支持操作画布内的所有图片和单独设置某一种图片的状态或者位置等 ... »

lerna管理前端模块实践

最近在工作中使用了 lerna 进行前端包的管理,效率提升了很多。所以打算总结一下最近几个月使用 lerna 的一些心得。有那些不足的地方,请包涵。 该篇文章主要包括在使用 lerna 的一些注意事项,和使用过程中与其他工具的整合,最终形成的一个最佳实践。 package 的指的是一个可以通过 np ... »

JavaScript高级程序设计(第4版)pdf 电子书

JavaScript高级程序设计(第4版)pdf 电子书 免责声明:JavaScript高级程序设计(第4版)pdf 电子书下载 高清收集于网络,请勿商用,仅供个人学习使用,请尊重版权,购买正版书籍。本电子版仅供预览,下载后24小时内务必删除。 JavaScript高级程序设计(第4版),真的是不容 ... »

JS变量提升和函数提升

1.变量提升 在ES6之前,我们声明一个变量需要用到var关键字,用var来声明的变量就存在变量提升的特性。 上述代码粗略来讲解,在上述代码中存在全局作用域和函数作用域,在两个作用域中都声明了变量a。在fn函数执行console.log(a)的时候,先会在自身所处在的函数作用域中找到变量a, 如果没 ... »

js 时间转换

/** * @export tsx * @param {*} tiem 传入时间 new Date() 和时间戳 不能传 0和1 其他的默认 当前时间 * @param {*} format 需要的格式 * @param {*} delay // 推前几天 就传几 0是当前传入的时间 */ expo ... »

前端程序员学好算法系列(三)链表

接下来我们来看链表题 206. 反转链表反转一个单链表。 示例: 输入: 1->2->3->4->5->NULL 输出: 5->4->3->2->1->NULL 解题:链表题需要我们设立更多的指针来保存我们当前操作的细节;1.我们需要定义3个指针 pre,cur ,next,pre为当前链表的前一个 ... »

前端程序员学好算法系列(二)数组

我们今天继续研究数组在算法中的应用 167. 两数之和 II - 输入有序数组 给定一个已按照升序排列 的有序数组,找到两个数使得它们相加之和等于目标数。 函数应该返回这两个下标值 index1 和 index2,其中 index1 必须小于 index2。 说明: 返回的下标值(index1 和 ... »

前端程序员学好算法系列(一)数组

前端程序员怎么才能学好算法呢?目前算法优秀的视频集中在c++,java,python,本人通过几个月专心看c++的视频掌握了算法的基本思路,都翻译成前端代码一一写出来,从真题到思维全面提升算法思维面对算法面试,不畏惧 二分查找法O(logn)寻找数组中的最大/最小值O(N)归并排序算法 O(nlog ... »

JS内存机制

在看JS内存机制之前我们先来看一下JS是门什么样的语言,他又有哪些变量类型。 动静态,强弱类型 静态:在使用之前就需要确认其变量数据类型。 动态:在运行过程中需要检查数据类型。 强类型:不支持隐式类型转换。 弱类型:支持隐式类型转换。 而JS呢,则是一种动态弱类型的语言。 JS的变量类型 JS的变量 ... »

函数防抖和节流

函数防抖和节流都是对高频动作触发回调函数的一个优化,实现方式上有类似之处。先从使用场景做个区分。 防抖使用场景: 表单输入框校验 提交按钮避免重复提交 节流使用场景: scroll,mousemove,resize等 函数防抖(debounce) 表单输入框校验在用户不停的打字输入时并不需要向后台校 ... »

实现 React Hooks

实现 React Hooks UI 开发有两个问题: 展示复用 逻辑复用 展示复用目前基本使用组件化来解决,逻辑复用一直以来都没有特别好的解决方案。React 从一开始的 mixin ,到 高阶组件 以及 Render Props ,都是在试图解决这个问题,但是都引入了一些别的问题。 Mixins ... »

vue甘特图gantt

vue做甘特图,先大致介绍下核心功能: (1)横轴、纵轴拖拽; (2)自定义监听点击事件(双击、右键等)(3)任务之间显示父子层级关系;(4)左侧列表信息,右侧时间轴表示任务;(5)每个任务可以订制样式,并且可以动态修改样式;(6)自定义时间粒度显示(小时、天、星期、月、年);(7)支持大批量数据渲 ... »

前端国际化的实现(5种情景的中英文)

最近做国外项目,需要实现项目的的国际化,这里大致捋一下思路、实现方式。项目技术栈是 vue + antd + java,我大致将需要翻译的内容划分为如下5个部分,接下来会一个一个的说明为何这么区分、如何实现翻译。这里强调一下,很负责的说,目前国际化,就是开发者写对象,一个key关联若干语种的翻译,纯 ... »

又发现一款纯js开源电子表格Luckysheet

据官网介绍这个电子表格插件,是一款纯前端类似excel的在线表格,功能强大、配置简单、完全开源. 官网链接: Luckysheet官网 在线DEMO 特性包含: 表格设置,包括冻结行列、合并单元格、筛选、排序、查询、条件格式、批注; 支持数据分析功能包括透视表、分列、矩阵操作、内置385个计算函数; ... »

深入理解JS:var、let、const的异同

目录 序言 var 与 let 的区别 作用域 重复声明 绑定全局对象 变量提升与暂存死区 let 与 const 异同 参考 1.序言 var、let 和 const 都是 JavaScript 中用来声明变量的关键字,并且 let 和 const 关键字是在 ES6 中才新增的。既然都是用来声明 ... »