stay hungry stay foolish

  • February 14, 2019 JavaScript 阅读时长 ~ 1分钟
    js防抖与节流
    防抖函数主要要来防止频繁调用某一事件的回调,其规定在某一延迟内,如果继续有事件触发,则计时器重新开始计时 var debounce = function(cb,delay) { var timer = null; return function() { clearTimeout(timer); timer = setTimeout(function() { cb(); ...…
  • February 14, 2019 构建工具 阅读时长 ~ 1分钟
    webpack的动态引入与动态加载
    动态引入文件有时我们想动态引入某个文件夹下的所有模块,文件名称事先是不知道的,这时可以使用 require.context 来实现该需求mod/mod1.js:export default { name : 'mod1'}mod/mod2.js:export default { name : 'mod2'}index.jsconst files = require.context('./mod', false, /\.js$/) //第一个参数可以使用正则,第二个参数用来指定是否要递归子目...…
  • February 13, 2019 构建工具 阅读时长 ~ 1分钟
    使用jenkins构建vue项目与分布式部署
    一、分布式部署拓扑图二、配置远程服务器可以使用Publish Over SSH插件来实现linux服务器之间的免密码登录,其步骤如下: 在 jenkins 服务器上安装Publish Over SSH插件 生成RSA秘钥对 将公钥配置到远程的三台机(10.32.0.223,10.33.0.11,10.167.0.246),将公钥添加到/root/.ssh/authorized_keys文件即可 将私钥添加到Publish Over SSH的配置中 在Publish Over SS...…
  • December 22, 2018 构建工具 阅读时长 ~ 1分钟
    webpack的几种引用方式
    a.js:console.log('modA run');var varA = 'modA'; //模块内部的变量在其他模块是获取不到的,全局作用域的变量可以放在 window 下define(function(require){ return 'modA';});b.js:require('./a');console.log('modB run');module.exports = 'modB'; c.js:console.log('modC run');export default '...…
  • December 20, 2018 其他 阅读时长 ~ 1分钟
    阿里云OSS跨域设置
    阿里云OSS跨域设置当使用阿里云OSS进行web端直连断点上传文件时,跨域设置投必须增加Etag,否则CompleteMultipartUpload阶段时,服务器将返回400(InvalidPart)…
  • December 09, 2018 开发工具 阅读时长 ~ 1分钟
    wirshark过滤
    运算符 小于: <,lt 小于等于: le,<= 大于: gt,> 大于等于: ge,= 等于: eq,= 不等: ne,!= 非: not,! 与: and,&& 或: or,||过滤IP ip.src eq 192.168.1.107 or ip.dst eq 192.168.1.107 ip.addr eq 192.168.1.107 // 都能显示来源IP和目标IP过滤端口 tcp.port eq 80 // 不管端口是来源...…
  • October 12, 2018 前端优化 阅读时长 ~ 1分钟
    前端性能优化之-setImmediate,setTimeout,process.nextTick的区别
    setImmediate 和 process.nextTick 是 nodejs 中的 api,标准浏览器里是没有这两个函数,不过 ie10+ 浏览器实现了非标准的 setImmediate,其主要用来在事件循环结束后,尽快的执行其回调(延时<=2ms)。在前端开发中,应避免使用 setImmediate。为了实现异步执行代码,js 引擎使用了观察者来检测相应的队列是否有待执行的任务。setTimeout 采用的是类似IO观察者,setImmediate 采用的是 check 观...…
  • October 10, 2018 JS数据结构 阅读时长 ~ 1分钟
    JS数据结构-动态规划求LCS
    动态规划是很多算法(例如KMP算法)的基础,有很多的应用场景,其核心原理为:通过前面一个或者几个状态推算出后一个状态,往往使用迭代来求出最优解。求最长公共子串 LCS(longest common substring)是动态规划的典型应用。求 LCS 的普通算法:/** * @param {Array/String} 数组1 * @param {Array/String} 数组1 * @return {Array/String} 最大连续的公共子串 */function getLC...…
  • September 30, 2018 JS数据结构 阅读时长 ~ 1分钟
    JS数据结构-红黑树
    红黑是一棵特殊的平衡二叉树,其没有AVL树那么严格,其查找时间复杂的为2log2N,在实际开发中更加常用。红黑树的特性 根节点为黑色; 不存在两个连续的红色节点; 叶子节点为NULL的黑色节点; 根节点到每个叶子节点所经过的黑色节点个数一致;红黑树的插入当插入的节点为根节点时,直接将根节点颜色置为黑色。为了减少调整的次数,插入的子节点默认置为红色,当插入的节点的父节点为黑色时候,此时没有破坏红黑树的特征,不需要调整树。当插入的节点的父节点为红色时,此时需要对树进行调整,主要有以...…
  • September 27, 2018 JS数据结构 阅读时长 ~ 1分钟
    JS数据结构-AVL平衡二叉树
    平衡二叉树是一棵特殊的二叉排序树,可以快速的实现查找,其查找时间复杂的为log2N。平衡二叉树的特性 具备二叉排序树的所有特性; 左子树和右子树深度差的绝对值不超过1; 左右子树都是平衡二叉树;在插入过程中,二叉树的平衡性可能遭到破坏,这时需要对二叉树进行调整。LL型失衡左子树高度减去右子树的高度大于1。//左旋转_proto._lRotate = function(node) { var rc = node.rChild; rc.pNode = node.pNode...…