摘要:
这文章写的很好 Compiler模块:编译模板系统。主要职责是将template编译成虚拟节点。 Runtime模块:也可以称之为Renderer模块,真正负责渲染的模块。主要职责是将虚拟节点渲染成真实元素,然后显示到浏览器上。 Reactivity模块:响应式系统。主要职责是监听响应式的数据,然后 阅读全文
摘要:
在进行窗口的resize、scroll,输入框内容校验等操作时,如果事件处理函数调用的频率无限制,会加重浏览器的负担,导致用户体验非常糟糕。此时我们可以采用debounce(防抖)和throttle(节流)的方式来减少调用频率,同时又不影响实际效果。 // 防抖 function debounce( 阅读全文
摘要:
相对于SOCKET开发者,TCP创建过程和链接折除过程是由TCP/IP协议栈自动创建的.因此开发者并不需要控制这个过程.但是对于理解TCP底层运作机制,相当有帮助. 而且对于有网络协议工程师之类笔试,几乎是必考的内容.企业对这个问题热情之高,出乎我的意料:-)。有时上午面试前强调这个问题,并重复讲一 阅读全文
摘要:
自从前端三大框架React、Vue、Angular面世以来,前端开发逐渐趋向规范化、统一化,大多数时候新建前端项目,首先想到使用的技术一定是三大框架之一,框架给前端开发带来了极大的便利和规范,但是由于这三大框架都是JS驱动,在JS没有解析加载完成之前页面无法展示,会处于长时间的白屏,带来了一定的用户 阅读全文
摘要:
1、操作对象:ImageData 对象,其实是canvas的像素点集合 2、主要操作: var obj=ctx.getImageData(0,0,100,100); ctx.putImageData(obj,110,0) 3、操作图片要放在站点才能正常操作,可以是本地站点可以是外部站点 4、属性有三 阅读全文
摘要:
演变历史 早期(全局函数模式) Global 被污染,很容易命名冲突function foo(){}function bar(){} 1 2 中期(命名空间模式) 本质是对象,可以被操作修改,不安全var DO = { foo: function () { }, bar: function () { 阅读全文
摘要:
基本类型和引用类型 js中的变量虽然不区分类型,但是实际上Ecmascript包含两种类型,基本类型和引用类型. 基本类型有5种:Undefined,Null,Boolean,Number,String,基本类型是按值访问的,因为可以操作保存在变量中的实际的值。 引用类型的值是保存在内存中的对象。与 阅读全文
摘要:
函数式编程中如何处理副作用? 阅读(2,381) 评论(0) Functional_Programming2018-10-28 一.纯函数 纯函数是说没有副作用的函数(a function that has no side effects),有几个好处: 引用透明(referential trans 阅读全文
摘要:
vue中的$on,$emit,$once,$off源码实现 weixin_34413065 2018-09-01 13:40:00 644 收藏 1 展开 这几种模式是基于订阅观察者模式的,维护一个事件中心,on的时候将事件按名称存在事件中心里,称之为订阅者,然后emit将对应的事件进行发布,去执行 阅读全文
摘要:
生命周期 Intialization 初始化阶段 其实这个阶段做的事情就是初始化。初始化属性props和状态state。 Mounting 挂载阶段 Mounting阶段叫挂载阶段,伴随整个虚拟DOM的声明。它里面有三个小的生命周期函数,分别是: componentWillMount:在组件即将被挂 阅读全文