摘要: 数据类型 数据分为基本数据类型(String, Number, Boolean, Null, Undefined,Symbol)和对象数据类型。 基本数据类型的特点:直接存储在栈(stack)中的数据 引用数据类型的特点:存储的是该对象在栈中引用,真实的数据存放在堆内存里 引用数据类型在栈中存储了指 阅读全文
posted @ 2019-02-19 08:51 半夜盗贼 阅读(299) 评论(0) 推荐(0) 编辑
摘要: 函数编程的函数组合:两个纯函数组合之后返回了一个新函数 var compose = function(f,g) { return function(x) { return f(g(x)); }; }; 效果: var toUpperCase = function(x) { return x.toUp 阅读全文
posted @ 2019-02-17 11:05 半夜盗贼 阅读(1594) 评论(1) 推荐(0) 编辑
摘要: Currying 为实现多参函数提供了一个递归降解的实现思路——把接受多个参数的函数变换成接受一个单一参数(最初函数的第一个参数)的函数,并且返回接受余下的参数而且返回结果的新函数,在某些编程语言中(如 Haskell),是通过 Currying 技术支持多参函数这一语言特性的。 所以 Curryi 阅读全文
posted @ 2019-02-16 13:41 半夜盗贼 阅读(245) 评论(0) 推荐(0) 编辑
摘要: 想学习可视化,做一个可编辑的可视化工具已经很久了,一个可拖动和缩放的画布是很有必要,在参考了gridstackjs 后作出一个简单的可拖拽和缩放的画布。 画布初始化 首先完成画布的大致功能结构,主要是利用mousedown,mousemove,mouseup来记录鼠标的位置信息,并触发初始化传入的钩 阅读全文
posted @ 2019-02-14 09:46 半夜盗贼 阅读(1273) 评论(0) 推荐(0) 编辑
摘要: 截流防抖函数经常用在频繁按钮操作,页面滚动触发,鼠标拖拽,输入查询等功能中。是为了在频繁操作中为了减少性能损耗的小技巧,这两个概念常用但是又容易混淆,下面简单的分析下防抖与截流的异同之处 防抖:意味着防止抖动出现的误操作,也就是防止像抖动一样的频繁操作。所以在防抖函数里会有个时间限制,当函数在一次执 阅读全文
posted @ 2019-02-01 11:42 半夜盗贼 阅读(2471) 评论(0) 推荐(0) 编辑
摘要: 观察者模式在前端开发中非常常用,我们经常用的事件就是观察者模式的一种体现。它对我们解耦模块、开发基于消息的业务起着非常重要的作用。Node.js 原生自带 EventEmitter 模块,可见它的重要性。 作为在工作中经常遇到和面试的经典题目当然要琢磨透彻,下面一步步手动写一个eventEmitte 阅读全文
posted @ 2019-01-31 11:25 半夜盗贼 阅读(2256) 评论(1) 推荐(1) 编辑
摘要: canvas 作图经常会遇到canvas绘制的图片模糊不清问题,这种问题实际上是画布尺寸与画布范围内实际像素不一致造成的。了解 dpr 原因分析 假设dpr = 2;图片大小为60x60px; 1.DOM呈现图片过程 图片——》浏览器css像素(显示尺寸)——》屏幕实际像素 60x60 30x30 阅读全文
posted @ 2019-01-16 17:46 半夜盗贼 阅读(7661) 评论(1) 推荐(1) 编辑
摘要: 最近在写一个可拖拽的画布功能,所以用到获取位置信息较多,由于基础不扎实忘了一些,容易混淆的API,在这里记下pageX,clientX,screenX,offsetX区别 pageX/pageY: 鼠标相对于整个页面的X/Y坐标。注意,整个页面的意思就是你整个网页的全部,比如说网页很宽很长,宽200 阅读全文
posted @ 2019-01-15 00:10 半夜盗贼 阅读(161) 评论(0) 推荐(0) 编辑
摘要: js 是一种"单线程”(single thread)执行环境的语言,所以在任务执行的过程中是按照队列的形式,当一个任务执行完再执行下一个任务,这样的模式会因为一个任务执行时间较长的时候出现性能问题,例如页面假死状态。 为了解决这个问题,js将执行模式分为两种:同步(synchronous)和异步(a 阅读全文
posted @ 2019-01-10 23:44 半夜盗贼 阅读(212) 评论(0) 推荐(0) 编辑
摘要: 在 React 底层,主要对合成事件做了两件事:事件委派和自动绑定。 1. 事件委派 在使用 React 事件前,一定要熟悉它的事件代理机制。它并不会把事件处理函数直接绑定到 真实的节点上,而是把所有事件绑定到结构的最外层,使用一个统一的事件监听器,这个事件监 听器上维持了一个映射来保存所有组件内部 阅读全文
posted @ 2019-01-03 09:13 半夜盗贼 阅读(2658) 评论(0) 推荐(0) 编辑