- 博客(65)
- 资源 (3)
- 收藏
- 关注

原创 如何优化 vue 项目
之前写了一篇解析 vue-cli 脚手架的博客 ,讲了 vue-cli 构建项目时是如何优化的,最近在优化项目,看看我们还能在项目中做些什么。
2019-06-14 18:19:23
618

原创 宏任务与微任务
之前写过关于事件循环机制的文章 js 的并发模型一文,当时以为已经讲清楚所有这方面的概念了,但是最近又发现,事件循环机制还有宏任务与微任务这个概念没有涉及,所以这里延续之前的文章,再继续讲一讲。
2018-10-29 17:45:44
5060

原创 Object.create 和 new 区别与原理
今天无意中看到一篇关于 Object.create 和 new 区别的博客,看完后觉得很不对劲。再一看评论,果然有问题。所以写个通俗易懂的博客,也再次理清自己的思绪
2018-10-11 16:37:26
3838
1

原创 观察者模式与发布/订阅模式
最近遇到观察者模式和发布/订阅模式的频率很高,就学习了一下,这里主要总结这种设计模式的由来,详细介绍他们以及区别。
2018-09-28 15:39:39
3088
4

原创 移动端后退如何刷新
后退刷新前段时间遇到了移动端后退更新的业务需求,踩了坑当然要总结了。后退更新的坑在于浏览器后退时,缓存文件的使用,JS 代码的执行。一、使用了缓存文件,从缓存方向解决直接禁用缓存,如meta禁用缓存(不可靠),在响应的 header 里面禁用换缓存(手机端)此方法行不通,因为有些浏览器会忽略这个头部二、bfcache 与 pageshowbfcache,即bac...
2018-06-21 19:14:07
2163

原创 js模块化进程
js的模块化进程现在前端技术日新月异,对于同一个问题痛点,各个时段有各自的解决方案,这就带来了很大差异。今天我就打算梳理js模块化的历史进程,讲一讲这些方案要做什么,怎么做。
2017-08-11 16:03:45
3850
原创 探究 webpack 如何实现模块化加载
这次主要讲讲 webpack 打包后的代码,分析他是如何实现模块化(同步)加载模块的,然后下次再讲讲如何按需(异步)加载模块。
2019-11-22 15:46:00
759
原创 if else 优化之策略模式
if else 太多,嵌套太深,已然成为我们搬砖路上经常遇到的问题。最近在项目上使用策略模式,有助于优化嵌套的代码,使结构更加清晰。
2019-09-30 14:25:44
1483
原创 深入解析 Class 的继承
今天看到一篇文章,博主遇到了如何继承 Date 对象的问题。博主很优秀,讲了好几个实现例子,但是文章看的我很迷糊。我觉得重点不是如何去实现,而是去明白产生问题的根源,所以有了这篇博客,从我认为可以理解的角度讲一讲。
2019-07-02 17:53:13
274
原创 解析 vue-cli 如何构建项目
用 vue-cli 直接生成一个 vue 项目很简单方便,不过要想深入学习并掌控 vue 项目,了解项目是如何建构的是很必要,今天就来一边学习一边试着分析。
2019-04-28 14:42:31
285
原创 Vue style 属性 scoped 原理详解
Vue 中的 scoped 属性详解讲讲 vue 中 scoped 属性的实现原理以及由此产生的特殊情况,然后引出样式的权重这一概念。
2019-04-11 15:02:26
3270
1
原创 vue 学习小结(生命周期和组件传值)
最近需要用到 vue 框架的项目,所以又去学习了 vue,这里简单做个小结,讲一讲 vue 2.0 的生命周期和组件传值,适用于阅读 vue 文档后
2018-08-30 17:08:06
1096
原创 JQ源码解析(二)无 new 构建 JQ 对象
JQ 源码解析(二)无 new 构建 JQ 对象接着上一篇文章,我们知道 JQ 文件创建了一个匿名函数,里面的一个函数包裹了所有 JQ 功能函数。现在我们进一步分析函数内容。我们都知道,实例一个 JQ 对象是没有用到 new 的var test = $('.test') //这里 $('.test') 相当于 new jQuery('.test')如何实现的呢,截取这个功能的主体...
2018-06-13 19:15:55
277
原创 ES6 Class 的原生写法
工作中一直专注于写业务逻辑,猛然发现原生 JS 基础没怎么提升。Later better than never ,最近又去翻看高程3(红宝石书),果然知识就是推翻旧有体系搭建新的过程。
2018-03-05 17:34:58
847
原创 一个bug引发对小程序运行原理的思考
一个bug引发对小程序运行的一点点思考最近遇到一个小程序的bug,问题不大很快解决,但是之后在看小程序运行原理的文章中,回想起这个bug,突然意识到这个bug出现的原因。通过简单讲讲 bug 出现的场景,引出一点点我对小程序运行的认识。bug场景在 onLoad 周期有一个循环计时器(setInterval),animation 是循环计时器的函数,内置一个一次性计时器(setTi...
2018-02-09 16:19:59
1192
原创 简单讲讲前端路由概念
前端路由路由历史什么是路由? 路由是根据不同的 url 地址展示不同的内容或页面早期的路由都是后端直接根据 url 来 reload 页面实现的,即后端控制路由。后来页面越来越复杂,服务器压力越来越大,随着 ajax(异步刷新技术) 的出现,页面实现非 reload 就能刷新数据,让前端也可以控制 url 自行管理,前端路由由此而生。单页面应用的实现,就是因为前端路由。
2018-01-27 17:24:20
8152
原创 微信小程序小结之框架
微信小程序学习小结最近做了个微信小程序的小项目,类似于听歌识曲的小游戏。由于项目很紧,边学边用,现在有空了打算做个学习小结,这里总结小程序的整体框架,生命周期,路由,还有传值等,欢迎互相学习。文件格式.js: JS 文件,用于书写逻辑.json: 设置文件.wxss: 类似 Css 文件,用于设置样式.wxml: 类似 Html 文件,用于设置结构目
2018-01-15 16:58:04
3197
原创 DOM的事件
要想让 JavaScript 对用户的操作作出响应,首先要对 DOM 元素绑定事件处理函数。所谓事件处理函数,就是处理用户操作的函数,不同的操作对应不同的名称。它是事件驱动编程模式的主要编程方式
2017-08-21 16:10:45
401
原创 浅谈webpack打包原理
模块化机制webpack并不强制你使用某种模块化方案,而是通过兼容所有模块化方案让你无痛接入项目。有了webpack,你可以随意选择你喜欢的模块化方案,至于怎么处理模块之间的依赖关系及如何按需打包,webpack会帮你处理好的。
2017-08-15 19:10:08
55129
1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人