- 博客(12)
- 收藏
- 关注
原创 Vuex 的作用
先搞清楚 vuex 的作用,vuex 主要用在父子组件通信或者子子组件间通信,如果不用 vuex 通信就得通过复杂的事件触发完成。一般开发都存在组件里面套组件的情况,所以 vuex 用起来比较方便,如果组件数目比较少,不用 vuex 完全可以的。Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式。它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化。
2024-10-29 18:16:07
220
原创 requestAnimationFrame
window.requestAnimationFrame() 告诉浏览器——你希望执行一个动画,并且要求浏览器在下次重绘之前调用指定的回调函数更新动画。该方法需要传入一个回调函数作为参数,该回调函数会在浏览器下一次重绘之前执行。备注: 若你想在浏览器下次重绘之前继续更新下一帧动画,那么回调函数自身必须再次调用 requestAnimationFrame()。requestAnimationFrame() 是一次性的。
2024-10-28 21:51:18
257
原创 WeakMap数据结构分析
WeakMap 只接受对象作为键名(null 除外),不接受其他类型的值作为键名。总的来说,WeakMap 结构与 Map 结构类似,也是用于生成键值对的集合。WeakMap 的键名所指向的对象,不计入垃圾回收机制。WeakMap 没有遍历操作(即没有。方法),也没有 size 属性。
2024-10-25 08:04:57
208
原创 ES6 Set和Map数据结构
ES6 提供了新的数据结构 Set。它类似于数组,但是成员的值都是唯一的,没有重复的值。使用 add() 方法向 Set 结构加入成员。去除字符串里面的重复字符。
2024-10-24 18:35:13
121
原创 JS纯函数返回结果
就是一个函数的返回结果只依赖于它的参数,不依赖于且不改变它作用域之外的变量状态的函数,并且在执行过程中没有副作用,我们就把这个函数叫做纯函数。
2024-10-23 12:30:35
180
原创 分布式场景下的正向代理
如果你对它们的概念不是很清楚,那么可能会在具体场景下比较困惑。在分布式场景下,我们经常会听到。今天与大家一起来聊聊正向代理。
2024-10-13 09:22:57
238
原创 同域下的单点登录SSO
首先我们要清楚的是,单点登录英文全称 Single Sign On,简称 SSO。是目前比较流行的企业业务整合的解决方案之一。SSO 不是一种架构,而是一种解决方案。它的解释是:在多个系统中,只需要登录一次,就可以访问其他相互信任的应用系统(同一浏览器内)。
2024-10-12 14:26:40
285
原创 Dep和Watcher的关系
dep 和 watcher 是多对多的关系。每个组件都对应一个渲染 watcher,每个响应式属性都有一个 dep 收集器。一个组件可以包含多个属性(一个 watcher 对应多个 dep),一个属性可以被多个组件使用(一个 dep 对应多个 watcher)如我们所知,Dep的subs数组存放这个数据所绑定的观察者对象,观察者对象的 deps 数组中存放着与这个观察者有关的数据 Dep。所以数据的 Dep 与 Watcher 其实是多对多关系。
2024-10-11 12:53:16
534
原创 JavaScript的广度优先
以上面的图为例,先走到 1,然后 1 走完之后,遇见了 2 和 3,广度优先时会先走一下 2 和 3,走完之后,再处理 4 和 5,顺序为1 > 2 > 3 > 4 > 5 > 6 > 7 > 8 > 9。则恰恰相反,广度优先是把每一个层级的所有选择都走一遍,只有当第一个层级走完之后,才会走第二个层级。是一条道走到底,类似于遇见了岔道,一条岔道走到了底,直到无路可走,而。
2024-10-10 20:17:31
461
原创 diff 算法的四大内容
在对比其子节点数组时,vue 对每个子节点数组使用了两个指针,分别指向头尾,然后不断向中间靠拢来进行对比,这样做的目的是尽量复用真实 dom,尽量少的销毁和创建真实 dom。具体来说,首先对根节点进行对比,如果相同则将旧节点关联的真实 dom 的引用挂到新节点上,然后根据需要更新属性到真实 dom,然后再对比其子节点数组;在对比的过程,vue 采用同级比较、递归深度优先的方式进行比较,同级比较就是说它不会跨越结构进行比较,在判断两个节点是否相同的时候,是根据虚拟节点的 key 和 tag 来进行判断的。
2024-09-30 08:38:27
238
原创 JS连续赋值
js 开始去从左到右寻找有没有未声明的变量 或者 报错信息,如果没有,先检查存在运算的优先级,当 '.' 跟 '=' 同时出现时,先进行 '.' 操作,再做赋值操作,也就是 '='js 中赋值是从右到左的,所以上面的连续赋值可以分解为下面这样。先来看下 js 中基本类型的连续赋值是下面这样。所以最终,a = 3, b = 3。但是面试题中的情况跟上面的不太一样。再来看一道经典面试题。
2024-09-29 10:08:42
405
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅