240 发简信
IP属地:上海
  • npm package开发指南-包内容篇

    假设我们要开发一个 npm 库,名字叫 lib-dev-tutorial,那么需要包含哪些内容?我们下面就来列举下,初始化目录结构如下: pac...

  • ES6模块默认导出和变量绑定(Default Exports and Exporting bindings)

    背景 JavaScript 现在最主流的模块机制是 commonjs 和 ES6 module。两者不单是语法上有所区别,在加载的时候也有所不同...

  • package-locks 机制简述

    问题 假设我们安装 eslint: 安装完后,在 package.json 里面生成如下模块版本: 然后你把 package.json 提交到代...

  • Resize,w 360,h 240
    如何使用Git Rebase

    我们在日常开发中使用 Git 做分支合并的时候有两种方式:merge 和 rebase。merge 是最常用的,rebase 使用的没有 mer...

  • Resize,w 360,h 240
    ESLint+Prettier代码规范实践

    前提 本文并不单独讲解 ESLint 和 Prettier 如何配置和运行。 问题 想在团队中推行一定的代码规范,并给不符合规范的代码做检测和提...

  • leetcode算法第10题正则表达式匹配-回溯-动态规划

    题目 简要贴下题目,具体详见这里: 给定一个字符串 (s) 和一个字符模式 (p)。实现支持 '.' 和 '*' 的正则表达式匹配。 '.' 匹...

  • 前端项目请求层封装过程

    调用 ajax 取请求后端数据是项目中最基础的功能。但是如果每次直接调用底层的浏览器 api 去发请求则非常麻烦。现在来分析一下怎么封装这一层,...

  • Resize,w 360,h 240
    React16性能改善的原理(二)

    前情提要 上一篇我们提到如果 setState 之后,虚拟 dom diff 比较耗时,那么导致浏览器 FPS 降低,使得用户觉得页面卡顿。那么...

  • 使用IndexedDB做前端日志持久化

    问题 页面如果表现不符合预期,前端工程师在没有 javascript 日志的情况下,很难 debug。所以就需要针对必要的步骤记录日志,并上传。...