有趣的NodeJS模块 - Buffer

2020-01-18
阅读 3 分钟
4.6k
Buffer 作为 nodejs 中重要的概念和功能,为开发者提供了操作二进制的能力。本文记录了几个问题,来加深对 Buffer 的理解和使用:

有趣的Nodejs模块之events

2020-01-10
阅读 3 分钟
2.6k
读了 events 模块的文档,研究了几个有意思的问题: ?️ 事件驱动模型 ?️ 优雅的错误处理 ?️ 监听器器队列顺序处理 ?️ 内存管理与防止泄漏 引用/转载 请声明出处:原文链接: xxoo521.com 事件驱动模型 Nodejs 使用了一个事件驱动、非阻塞 IO 的模型。events模块是事件驱动的核心模块。很多内置模块都继承了events.EventEm...

《MongoDB实战》读书笔记

2019-10-12
阅读 10 分钟
3.1k
MongoDB的特点:扩展策略、直观的数据模型。在mongodb中,编程语言定义的对象能被“原封不变”地持久化,消除对象结构和程序映射的复杂性。

前端动画专题(二):输入框特效

2019-07-31
阅读 3 分钟
3.9k
专注前端与算法的系列干货分享,欢迎关注(¬‿¬):「微信公众号:心谭博客」| xin-tan.com | GitHub 特效一览 划线动态: 动态边框: 划线动态 效果图 原理和代码 :before 和 :after伪元素指定了一个元素文档树内容之前和之后的内容。由于input标签不是可插入内容的容器。所以这里下划线无法通过伪元素来实现。需要借助其...

CSS动画设计专题(一):字体特效

2019-07-29
阅读 3 分钟
2.5k
专注前端与算法的系列干货分享,欢迎关注(¬‿¬):「微信公众号:心谭博客」| xin-tan.com | GitHub 特效一览 划线动态: 背景高亮: 色块进出: 划线动态 效果图 原理 首先,利用::after和::before就可以画出上下两条线,所以只需要一个 dom 元素即可。 其次,对于鼠标移入的动画,要给上面两个伪元素设置:hover选择器。 ...

「HTML5」FileAPI 文件操作实战

2019-07-22
阅读 5 分钟
2.9k
专注前端与算法的系列干货分享,欢迎关注(¬‿¬):「微信公众号:心谭博客」| xin-tan.com | GitHub 介绍 HTML5 为我们提供了 File API 相关规范。主要涉及 File 接口 和 FileReader 对象 。 本文整理了兼容性检测、文件选择、属性读取、文件读取、进度监控、大文件分片上传以及拖拽上传等开发中常见的前端文件操作。 准备...

深入koa源码(二):核心库原理

2019-06-24
阅读 4 分钟
2.1k
最近读了 koa2 的源码,理清楚了架构设计与用到的第三方库。本系列将分为 3 篇,分别介绍 koa 的架构设计和 3 个核心库,最终会手动实现一个简易的 koa。这是系列第 2 篇,关于 3 个核心库的原理。

深入koa源码(一):架构设计

2019-06-21
阅读 3 分钟
2.7k
专注前端与算法的系列干货分享,欢迎关注(¬‿¬):「微信公众号:心谭博客」| xin-tan.com | GitHub 最近读了 koa 的源码,理清楚了架构设计与用到的第三方库。本系列将分为 3 篇,分别介绍 koa 的架构设计和 3 个核心库的原理,最终会手动实现一个简易的 koa。 koa 的实现都在仓库的lib目录下,如下图所示,只有 4 个文件...

「翻译」逐步替换Sass

2019-06-19
阅读 4 分钟
2.4k
这是一篇介绍现代 css 核心特性的文章,并且借助 sass 进行横向对比,充分体现了 css 作为一门设计语言的快速发展以及新特性为我们开发者带来的强大生产力。

微信网页登录逻辑与实现

2019-04-29
阅读 4 分钟
6.3k
现在的网站开发,都绕不开微信登录(毕竟微信已经成为国民工具)。虽然文档已经写得很详细,但是对于没有经验的开发者还是容易踩坑。 所以,专门记录一下微信网页认证的交互逻辑,也方便自己日后回查: 加载微信网页sdk 绘制登陆二维码:新tab页面绘制 / 本页面iframe绘制 用户扫码登陆,前端跳入回调网址 回调网址进一...

HTML5原生拖放事件的学习与实践

2019-04-20
阅读 3 分钟
3.7k
前言 之前学习了HTML5的拖放事件,开发中也用到了拖拽组件。为了厘清整体的逻辑,专门做了一个小例子。 具体实现的效果也很简单:元素可以在容器中任意拖动,元素被移入容器的时候,还会有相关样式的改变已达到更好的展示效果。 例子基本运用了拖放事件的全部事件,并且尽量简洁的展示了出来。特此记录。 专注前端与算法...

《前端面试手记》之ES6重难点整理

2019-04-19
阅读 6 分钟
3.7k
? 内容速览 ? let和const Set和Map Generator和yield Promise、async/await介绍 Proxy代理器 ... 专注前端与算法的系列干货分享,欢迎关注(¬‿¬):「微信公众号:心谭博客」| xin-tan.com | GitHub let和const ES6新增了let和const,它们声明的变量,都处于“块级作用域”。并且不存在“变量提升”,不允许重复声明。 同时,c...

《前端面试手记》之JavaScript基础知识梳理(下)

2019-04-03
阅读 5 分钟
2.5k
👇 内容速览 👇 实现ES5继承的4种方法 原型和原型链 作用域和作用域链 Event Loop 执行上下文 闭包的理解和分析 🔍查看全部教程 / 阅读原文🔍 ES5继承 题目:ES5中常用继承方法。 方法一:绑定构造函数 缺点:不能继承父类原型方法/属性 {代码...} 方法二:原型链继承 缺点:无法向父类构造函数中传递参数;子类原型链上定义...

《前端面试手记》之JavaScript基础知识梳理(上)

2019-03-31
阅读 5 分钟
2k
? 内容速览 ? 普通函数和箭头函数的this 原始数据类型及其判断和转化方法 深浅拷贝及实现 JS事件模型 常见的高阶函数 ?查看全部教程 / 阅读原文? 普通函数和箭头函数的this 还是一道经典题目,下面的这段代码的输出是什么?(为了方便解释,输出放在了注释中) {代码...} 其实诀窍很简单,常见的基本是3种情况:es5普通...

《前端面试手记》之常考的源码实现

2019-03-20
阅读 7 分钟
3.9k
? 内容速览 ? 手动实现call/apply/bind 实现一深拷贝函数 基于ES5/ES6实现双向绑定 instanceof原理与实现 ?查看全部教程 / 阅读原文? 手动撸个call/apply/bind 实现call 来看下call的原生表现形式: {代码...} 好了,开始手动实现我们的call2。在实现的过程有个关键: 如果一个函数作为一个对象的属性,那么通过对象的....

每天一个设计模式之装饰者模式

2019-01-23
阅读 3 分钟
1.1k
作者按:《每天一个设计模式》旨在初步领会设计模式的精髓,目前采用javascript和python两种语言实现。诚然,每种设计模式都有多种实现方式,但此小册只记录最直截了当的实现方式 :)

每天一个设计模式之责任链模式

2019-01-07
阅读 3 分钟
1.3k
作者按:《每天一个设计模式》旨在初步领会设计模式的精髓,目前采用javascript和python两种语言实现。诚然,每种设计模式都有多种实现方式,但此小册只记录最直截了当的实现方式 :)

每天一个设计模式之责任链模式

2019-01-07
阅读 3 分钟
2.1k
作者按:《每天一个设计模式》旨在初步领会设计模式的精髓,目前采用javascript和python两种语言实现。诚然,每种设计模式都有多种实现方式,但此小册只记录最直截了当的实现方式 :)

刷《一年半经验,百度、有赞、阿里面试总结》·手记

2018-11-29
阅读 11 分钟
3.4k
有给出的或者有些不完善的答案,也尽力给出/完善了(可能有错,大家自行辨别)。有些很困难的题目(例如实现Promise),附带相关链接(懒癌患者福利)。