Koa升级之旅 发表于 2019-07-27 最近一周多的时间在做Koa相关的升级,由于项目Node服务侧三年多没有更新过,相关的依赖都非常老旧以及部分都不再维护了,已经影响了后续的开发,正好乘着业务需求的UI的视觉稿正在做,当前有一个空档期,因此这段时间把相关的依赖升级。没有想象中的那么困难,但是也有一部分没有自己想的那么简单。权当记录一下整 ... 这是小时哥的第 38 篇原创文章 »
每周算法-二叉搜索树 发表于 2019-07-21 说到二叉搜索树,必不可少的就是二分查找法。 二分查找法也只有对于有序数组,我们才能使用二分查找法 12345678910function binarySearch(arr, target) { let l = 0, r = arr.length - 1; while (l <= ... 这是小时哥的第 37 篇原创文章 »
记一次hexo添加评论的方法 发表于 2019-07-21 注册先到https://github.com/settings/applications/new 上面注册, Homepage URL 和 Authorization callback URL 填写自己的域名,像我的就是 http://shimeng.info/ 之后会生成一个 client I ... 这是小时哥的第 36 篇原创文章 »
Node-js流(一)Readable-Stream 发表于 2019-07-20 生产者消费者问题如果想要深入的理解stream,生产者消费者问题是必须要跨过去的一个问题。说一下我对这个问题的理解。这个问题是多进程共享一段数据的问题。一个是生产者,一个是消费者,二者中间有一个缓冲区,生产者往缓冲区添加数据,消费者从缓冲区取数据。那么由此就产生了一些问题,那就是生产者不应该在缓冲区 ... 这是小时哥的第 35 篇原创文章 »
每周算法-堆 发表于 2019-07-14 堆的使用场景: 优先队列, 动态的任务处理中心 主要操作:入队, 出队 N个元素选出前M个元素 时间复杂度 NlogM 堆的基本实现: 二叉堆 每一个子节点都不大于它的父节点的完全二叉树 用数组存储二叉树,索引从1开始,插入节点的时候放到最后,之后通过shiftUp向上递归,删除节点操作,把第一 ... 这是小时哥的第 34 篇原创文章 »
记一次前端的前后端开发 发表于 2019-07-10 背景由于做的项目是影院商家系统,因此涉及到了大量的第三方的接口。在之前是一部分接口是第三方通过HTTP接口实现的,因此浏览器可以直接通过网络请求,另一部分的就是通过Thrift直连,对于这种方式,之前的做法是我们这边的后端和第三方的人员联调沟通,之后给前端提供HTTP接口。然后呢,这段时候正好公司那 ... 这是小时哥的第 33 篇原创文章 »
每周算法-排序算法 发表于 2019-07-06 希望自己以后每周能学一些算法,一方面提升自己的算法能力,同样也对自己是一个督促,如果经常做舒适区的业务代码,难以往深入的地方去挖掘。 1. Kth Element 求解第K个元素的问题普通的方法是先排序后查找,排序算法最好的时间复杂度是O(nlogN), 而如果要是提高效率。有两种思路,一种是快排的 ... 这是小时哥的第 32 篇原创文章 »
thrift转NodeJS mac安装 发表于 2019-07-01 这次有个需求,后端没有提供http接口,需要前端直接通过node读取thrift接口。于是先配置安装了一下环境,但是其中虽然通过wiki找到了配置方法,但是还是有一些缺漏的地方,包括互联网上其他的答案也是不是特别全面,特意记录保留。 一、安装依赖12345678> brew install b ... 这是小时哥的第 31 篇原创文章 »
React Hooks 学习 发表于 2019-06-30 在React16.8之前,虽然同样有函数组件,不过只是作为无状态组件的一种使用方法,对于需要涉及到React生命周期函数,维护组件内在的状态的能力就需要使用类组件了。并且React有别于其他框架的特点一方面是其可以使用标准化的声明式的模版语言jsx,另一方面就是其的组件化,也就是说涉及到组件的封装和 ... 这是小时哥的第 30 篇原创文章 »
co源码解读 发表于 2019-06-15 在JS中,状态控制的有三种,分别是Generator、Promise、Async/Await。co库是专门将Generator以promise的形式输出的,核心代码非常简洁. 首先的需要明白的是,Generator是将通过调用next将执行内部的yield状态,而Promise是通过调用resolv ... 这是小时哥的第 29 篇原创文章 »