该系列基于typescript中文文档官网[https://www.tslang.cn/docs/home.html]重新学习编写的demo,部分描述未必正确,又或者说对到t...
该系列基于typescript中文文档官网[https://www.tslang.cn/docs/home.html]重新学习编写的demo,部分描述未必正确,又或者说对到t...
该系列基于typescript中文文档官网[https://www.tslang.cn/docs/home.html]重新学习编写的demo,部分描述未必正确,又或者说对到t...
什么是this this不是执行上下文(EC才是执行上下文),this是执行主体 this,在全局上下文下,this指向window 块级上下文中没有自己的this,它的th...
准备工作 如果前面有自行实现过vue-router,那这里就没有工作了,否则移步手写Vue2核心(七):vue-router实现[https://www.jianshu.co...
图 图是网络结构的抽象模型,是一组由边连接的节点 图可以表示任何二元关系,比如道路、航班 JS中没有图,但是可以用Object和Array构建图 图的表示法:邻接矩阵、邻接表...
源码相关的文章确实不好写,一个是每个人基础功不一样,我觉得说的清楚的东西可能对到别人依旧含糊,一个是对一些逻辑的理解也未必就敢说百分百正确,最后是真想拆分一步步的关键代码都不...
树 一种分层数据的抽象模型 前端工作中常见的数包括:DOM树、级联选择、树形控件… javascript中没有树,但是可以用Object和Array构建树 树的常用操作:深度...
侦听器watch的实现原理 官方watch使用方式文档[https://cn.vuejs.org/v2/api/#watch]Vue中watch的使用方式有多种,包括: 函数...
字典 与集合类似,字典也是一种存储唯一值的数据结构,但它是以键值对的形式来存储 ES6中有字典,名为Map 字典的常用操作:键值对的增删改查 两个数组的交集 leeCode第...
网上找的图,懒得自己画,毕竟本人PS一般(程序员程度的一般,对比设计师为未毕业渣渣级) 在这里也多说一句,节点对比不属于diff算法,diff算法仅对于父节点一致,并且都有子...
集合 一种无序且唯一的数据结构 ES6中有集合,名为Set 集合的常用操作:去重、判断某元素是否在集合中、求交集 两个数组的交集 leeCode第349题[https://l...
属性与生命周期合并策略 Vue.mixin实现 在vue中有一个静态方法:Vue.mixin,用于属性与生命周期的合并vue3已经废弃,因为该方法存在一些问题: 可能被开发者...
链表 多个元素组成的列表 元素存储不能连续,用next指针连在一起 数组 VS 链表 数组:增删非首尾元素时往往需要移动元素链表:增删非首尾元素,不需要移动元素,只需要更改 ...
队列 一个先进先出的数据结构 javascript中没有队列,但可以用Array实现队列的所有功能 队列的应用场景 需要先进先出的场景 比如:食堂排队打饭、JS异步中的任务队...
栈 一个后进先出的数据结构 javascript中没有栈,但可以用Array实现栈的所有功能 栈的应用场景 需要后进先出的场景 比如:十进制转二进制、判断字符串的括号是否有效...
算法 解决一类问题 具体 明确没有歧义 学算法的意义: 写好程序提高效率 开拓视野增加面试通过率 数据可视化、VR、游戏、、AI和现在不知道的Anything 数量级、输入、...
对象的依赖收集与批量处理更新 目前已经实现的功能及流程梳理: 对数据进行了拦截:对象劫持(Object.defineProPerty) 数组(AOP切面编程,对七个能改变数组...
var与function 变量提升:在当前上下文中(全局/私有/块级),JS代码自上而下执行之前,浏览器会提前处理一些事情(可以理解为词法解析的一个环节,词法解析一定发生在代...