Mopecat Blog

站的更高,尿的更远。

vue的初始化过程

看源码啊铁子

过程中有一些地方看不懂我就直接跳过了,死磕的话影响读下去的信心,效率也不高,整体了解一遍了再回头看,应该会更好理解点 src/instance/index.js在initMixin方法中给 Vue 的原型上添加_init方法,在 Vue 的构造函数中直接调用_init方法,在这个方法中首先初始化了mixin(将 mixin 中注册的 options 与 new Vue 传入...

vue的双向绑定……

遇见问题&解决问题

最近一段时间的面试每次都会被问到vue的双向绑定的实现,我确实也没研究过Vue的源码,就在网上看了一些答案理解一下,也没自己确切的实现过,导致每次答都不是很满意。 我本着遇见问题,解决问题的原则。就去研究了一下,然后自己再敲一遍,加深一下印象。 代码地址: https://github.com/Mopecat/MyVue 回头再用ts写一个熟练一下

前端性能优化:HTTP缓存知多少

性能优化

HTTP缓存 按失效策略分类: 强缓存 强缓存是指客户端在第一次请求后,有效时间内不会再去请求服务器,而是直接使用缓存数据。 Expires 是一个未来时间的时间戳,表示缓存资源的过期时间,由服务端下发。由于有以下几点缺陷已经被淘汰: 可能会因为服务器和客户端的 GMT 时间不同,出现偏差 ...

前端性能优化:图片优化

性能优化

图片优化 这是一篇学习笔记,内容源于掘金小册 《前端性能优化》 JPEG/JPG 关键字: 有损压缩、体积小、加载快、不支持透明 使用场景: JPG 图片经常作为大的背景图、轮播图或 Banner 图出现。 PNG-8 与 PNG-24 关键字:无损压缩、质量高、体积大、支持透明 使用场景:由于 PNG 在处理线...

为什么手写的cli,在Mac环境上不能执行?

拍死一个bug,就站的高一点

前段时间根绝Vue-cli仿写了一个简单版本的cli应用在公司了,虽然也没什么人用,最近换本了,突然想起这个项目所以在新的电脑安装了一下试试 ****** 开始 打开终端执行命令tujia-cli create,自己写的东西命令还是记得牢啊 哈哈哈哈哈。 然后我就发现项目的命令无法执行,天啦撸发布的时候相当之ok的啊老铁,你怎么又不好使了啊!于是开始我就去我安装的目录上看了一眼,发现命令文...

为什么总是不能完成学习计划

三省吾身

最近发现自己定的学习计划总是不能完成,感觉自己是个执行力弱鸡的废材选手,于是发扬了凡是遇到解决不了的事情就画一画的革命精神我非常详细的分析了自己完不成学习任务的各种原因如下图 很遗憾这张图片太大了,但是呢我还没做点击放大图片的功能,所以啦,如果你想看的话,我想看这篇文章的人,兄得你自己应该能找到方法~ 今早在地铁上看到了一句话,感觉很有道理啊,放到这里勉励勉励自己吧 清华大学...

JavaScript 基础强化:手写Promise源码

基础成就高度

前言 随着ES6的广泛应用,越来越多的前端er认识了Promise,他是javascript处理异步请求的标准,而且近年公布的ES版本来看,很多的api都是在Promise的基础上封装的~,比如ES7的async,await。由此可见Promise在未来会越来越重要,所以为了更好的迎合未来的趋势以及在日常工作中更好的应用Promise,我们应该去深入的理解它的原理,这样在处理bug的时候才有...

JavaScript 基础强化:函数的应用(高阶函数)

基础成就高度

学习东西总是要记录一下的。多学多看,明年的工资才能更高的呀。加油啊,老铁。我可以的!!!! 高阶函数 所谓的高阶函数从通俗的意义上说就是以下两点满足任何一个都是高阶函数: 一个函数的参数是函数 1 2 function a(){} a(()=>{}) 一个函数返回一个函数 1 2 3 function b(){ return function(){} }...

JavaScript 基础强化:闭包

基础成就高度

闭包的概念可以说是js里老生常谈的了,它可以说是javascript最基本最重要的概念之一,为什么呢?因为它涉及到很多js的基本概念。比如:作用域,作用域链,执行上下文,调用栈,内存管理等概念 为了更好的理解闭包,所以我们从基础走起,简单了解这些概念: 作用域 任何语言都有作用域这个概念,作用域是什么呢?说白了也就是寻找变量的规则,在javascript中现在为止有三种作用域:函数作用域,...

JavaScript 回顾学习:数据类型

基础成就高度

概述 ECMAScript中有5中基本数据类型:Undefined,Null,Boolean,Number,String,还有一种复杂数据类型对象(Object),Object本质上是由一组无序的名值对组成的,JavaScript同样还定义了另外两种特殊对象: 数组—>表示带编号的值的有序组合 函数—>函数是具有与它相关联的可执行代码的对象,通过调用函数来运行可执行代码...