SF
记一件小事
记一件小事
注册登录
关注博客
注册登录
主页
关于
RSS
前端的数据结构与算法(1)-- dfs
zwhu
2017-08-12
阅读 2 分钟
3.7k
前端在开发过程中接触到的算法最多的莫过于排序和 dfs(深度优先遍历) 。 dfs 算法广泛用于图(树是图的一种)的遍历,如:没有 querySelectorAll 的时候,根据 classname 或者 tag 查找 element。
在 Node.js 中用 pipe 处理数组的实现
zwhu
2017-03-18
阅读 4 分钟
6.9k
TLDR;这篇文章的风格是在致敬 Jim 老师;致敬,致敬,懂吗,不是抄袭,程序员的事怎么能叫抄袭。当然我对 Node.js 的 stream 也是现学现卖,有使用不当的地方,敬请指出。原文链接 欢迎 star。
padStart 的 polyfill
zwhu
2017-02-06
阅读 2 分钟
6.2k
今天在看 ES7 新增的部分 Api 的时候刚好看到 padStart 的这个方法,好像还挺实用的,而且也想在正式开始工作之前先找找写代码的感觉,于是顺手(其实还是花了不少时间的)就实现了这个 polyfill。
用 Node.js 写前端自己的 Git-hooks
zwhu
2016-12-16
阅读 3 分钟
13.1k
TLDR; 介绍 Git 钩子的基本开发流程 介绍如何用 Node.js 写 Git 钩子 Hooks-钩子 简介 Git 钩子是指在特定的 Git 动作(如:git commit、 git push )下被触发的脚本。而钩子主要被分为两种: 客户端钩子 服务端钩子 而客户端钩子又被分为以下几种: 类型 钩子名称 接收参数 可否终止操作 提交工作流钩子 pre-commit \ ...
100块钱换零钱,最多有多少种方式的 JavaScript 版本实现
zwhu
2016-12-11
阅读 1 分钟
5.1k
原文链接: 欢迎 Star 现在有100块钱人民币,将 100 块钱换成零钱(最小币值 1 元),一共有多少方式? 总的不同方式的数目等于: 将现金数 100 换成除第一种币值之外的所有其他硬币的不同方式数据, 加上 将现金数 (100 - 第一种币值) 换成所有种类的币值的不同方式 ok, 根据上面的说法来实现吧: {代码...} 测试一下...
MIT-Scheme 安装入门
zwhu
2016-11-22
阅读 2 分钟
12.3k
最近 FP(Functionial Programming) 的概念很火,React、Redux 全家桶系列都是基于 FP 的概念,而 Scheme 作为 FP 的鼻祖 Lisp 的一门方言,又是王垠曾经很推崇的语言,很是期待掌握这门语言。
ssh 执行远程主机命令的自动化 bash 脚本
zwhu
2016-09-27
阅读 2 分钟
16.6k
最近的一个项目中,我们前端需要自己发布静态资源到远程目标服务器上,中间需要经过一个跳板机(为什么不用公司内部的 GitLab 方式发布,原因很多,这里就不表述了)。前端如果手动发布的话需要经过以下步骤:
当我谈缓存的时候,我谈些什么
zwhu
2016-03-12
阅读 6 分钟
4.5k
通过网络获取内容既缓慢,成本又高:大的响应需要在客户端和服务器之间进行多次往返通信,这拖延了浏览器可以使用和处理内容的时间,同时也增加了访问者的数据成本。因此,缓存和重用以前获取的资源的能力成为优化性能很关键的一个方面。
Absolute 和 Relative
zwhu
2016-02-29
阅读 2 分钟
4.9k
花了一个周末的时间,把 css-postion 的标准读了一遍,把关于 Absolute 和 Relative 的部分的理解在这里记录一下。
JavaScript 中使用 new Function 执行字符串拼接表达式
zwhu
2015-10-12
阅读 1 分钟
7.9k
作者 @zwhu原文章 @github 最近在用 node 学写爬虫,也可以叫模拟登陆,遇到某个网站在返回的 HTML 中插入了一个生成页面token的script。 这个HTML的结构大概类似 {代码...} 首先拿到这个页面,然后获取script标签的表达式字符串,剩下的事就是怎样执行表达式字符串,并获取token。 在此处的情景中用eval也是挺不错的选...
一个人的团队(一)
zwhu
2015-09-24
阅读 4 分钟
6.5k
我们在前期开发的过程中,更多是一个人单打独斗,因为是自己一个人,可以把代码写的很随意,也不用注意什么工程化的东西;但作为一个有追求的程序员,不能为未来的自己挖坑,坚决走前端工程化的路线。
正则表达式巧用 Unicode 匹配特殊字符
zwhu
2015-09-15
阅读 2 分钟
11.1k
首先声明,本文所有的代码都是在 ES6 下面运行,ES5需要修改之后才能运行,但是本文没有涉及到太多的ES6新特性,而且由于v8对u修饰符不支持,最后的实现也基本是用ES5的知识写的代码。
利用 Canvas 将白色背景的 JPEG 图片转成透明的 PNG 图片
zwhu
2015-09-08
阅读 3 分钟
21.5k
老板让我这个不会P图的伪前端把公司的Logo放到公司网站上,结果给了我一张 JPEG 格式的图片,作为一个有追求的码农,怎么能现学 ps,于是利用一点HTML5+NODE的知识写了个转换的脚本。
利用 ES6 的字符串模板和 JQuery 简单理解 MVVM
zwhu
2015-08-29
阅读 2 分钟
5.4k
先说前端为什么需要 MVVM 或者 FLUX。在我看来,是为了保证不那么优秀的前端er在团队中写出不那么垃圾的代码,即使确实十分垃圾,也不会污染到团队中其他同事的代码,其它的设计模式应该也具有这种作用。