参考《leetcode 题解,记录自己的 leetcode 解题之路》练脑 (一)

 知识点快速索引

层次遍历(BFS)(树的基本操作- 遍历) 投票算法  hashmap 存储已经访问过的值 使用栈来代替递归 在push的时候利用辅助栈(双栈) 因数分解 二进制表示、2的幂次方特点 位运算、异或运算、左移一位表示进位 carried变量来实现进位  滑动窗口 动态规划一 动态规划二  分治法 使用双指针 dummyHead简化操作  二分查找  回溯法  矩阵旋转操作  类似桶排序  冒泡排序的时间复杂度优化  路径动态规划空间优化  爬楼梯问题介绍  爬楼梯问题 继续阅读“参考《leetcode 题解,记录自己的 leetcode 解题之路》练脑 (一)”

前端mvvm框架底层学习(八、双向绑定加入发布订阅模式)

前言

上一篇《前端mvvm框架底层学习(七、双向绑定优化)》介绍了我们如何解决了双向绑定中的局部更新的问题,或者解决更小颗粒度更新的问题,但代码比较混乱,所有的Dom操作及数据绑定操作都耦合到了一起。这里我们来学习一下Vue是如何结合合经典的发布/订阅模式进行双向绑定优化的。 继续阅读“前端mvvm框架底层学习(八、双向绑定加入发布订阅模式)”

Vue中使用渲染函数render实现无限节点的树

前言

我们在Vue的官方文档其中一节渲染函数 & JSX中有这么一句话:『Vue 推荐在绝大多数情况下使用模板来创建你的 HTML。然而在一些场景中,你真的需要 JavaScript 的完全编程的能力。这时你可以用渲染函数,它比模板更接近编译器。』,在实际项目中还真的遇到过一些使用模板解决不了的问题,如要生成一棵无限的Dom树,或者生成无限层级的菜单等情况。 继续阅读“Vue中使用渲染函数render实现无限节点的树”

对每周十道前端大厂面试题中题目深度解答

前言

无意中浏览到了这样的一个repo,叫《每周十道前端大厂面试题》(https://github.com/airuikun/Weekly-FE-Interview),看到里面其中的一些题目觉得挺有意思,就深度解答一下 继续阅读“对每周十道前端大厂面试题中题目深度解答”

Vue是如何进行模板编译的?(三)

前言

上一节先把比较难以理解的一些正则先给简单介绍了,这一节原本是想来把可个Htmlparser的源码刨一下,但因为作者尤大大也是参考了http://erik.eae.net/simplehtmlparser/simplehtmlparser.js这个simplehtmlparser来改出来的,我们何不以simplehtmlparser来入手,自己DIY,看能玩出什么花样,其实在写此文章前,我已经按自己的思路把simplehtmlparser简单改了一下, 继续阅读“Vue是如何进行模板编译的?(三)”

Typescript+Gulp+Babel常用前端流程自动化配置

前言

近期要开发一个APP Webview与H5交互的js sdk,终于找到机会可以尝试使用typescript来开发js sdk库啦。按下面的配置文件使用npm init先初始化了项目,然后执行npm install 或者yarn install按装相关的依赖包吧,这样就可以愉快的使用typescript来开发自己的js库了, 继续阅读“Typescript+Gulp+Babel常用前端流程自动化配置”

Vue是如何进行模板编译的?(二)

前言

上一节笼统介绍了Vue进行模板编译的过程,但其实其背后的复杂度绝对是超呼想象,要当其为一个庞大的工程来处理。众所周知,归根结底,Vue项目也是一html5页面,要对其进行模板编译,也就时相当于去把这个页面所有的内容都给爬下来对其中的标签、属性等等进行一步步取值处理。下面,就一步步来欣赏其中的精彩: 继续阅读“Vue是如何进行模板编译的?(二)”

Gastby V2安装过程中常见问题

前言

之前在cnblogs上写过一篇《Gatsby上手指南 – 让你的静态网站用react来高逼格的写》介绍Gastby V1版本的使用,但现在V2版本出来了,想尝尝新,发现这版本改动不是一般的大,单单是安装过程就已经要折腾许久,安装方式也有点不一样,以前V1版直接建议全局安装Gastby脚手架,然后通过脚手架来初始化创建项目,V2版则建议使用npm的新命令npx来临时安装Gastby脚手架,然后初始化Gastby项目后,脚手架会自动被删除,官网也有解释原因是因为怕用了不同的版本会导致依赖包混乱导致一些依赖关系错误问题。下面就罗列一些安装过程中可能遇到的坑: 继续阅读“Gastby V2安装过程中常见问题”

对大型综合管理类平台前端架构的思考

背景

谈到后台管理平台,很多人用过林林种种的各种各样的后台管理平台,前端还没兴起的时候,后台管理平台一直是后端一锅端的。各种开源的后台CMS类的管理平台,不管你是基于何种后端语言的,总可以找到不少开源的管理平台类的代码,但版面设计风格是比较死板和带着强烈的第二次工业革命的感觉。 继续阅读“对大型综合管理类平台前端架构的思考”