自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 防抖和节流

面试:防抖(debounce)和节流(throttle)是项目开发中常用的两种技术。区别:防抖是在n秒内执行该事件,如果在n秒内重复触发,那么将会重新计时,最后计时完毕执行事件。节流是在n秒内只执行一次事件,如果在n秒内重复触发,那么规定的时间内只会执行一次。实现:深入理解,建议手写实现,这里我采用的是通过setInterval模拟事件实现;当然实现的方法多样化,这只是我的一种:应用场景:防抖:实时搜索‌:在搜索框输入时,使用防抖可以延迟触发搜索请求

2024-11-26 16:55:22 318

原创 浅拷贝与深拷贝

浅拷贝和深拷贝的存储都是基于内存的,内存常用的分为栈内存和堆内存。那么不同的数据类型就不会存储到不同的内存中

2024-11-26 11:24:00 393

原创 实现useEffect

实现useEffect、实现cleanup、mini-react

2024-02-21 15:36:43 538

原创 实现useState

useState, 实现useState,批量执行action,提前检测 减少不必要的更新

2024-02-05 15:37:11 880 1

原创 实现diff更新children

diff,diff更新逻辑,diff更新children,diff删除多余的老节点,解决case,优化更新,减少不必要的计算

2024-02-04 17:21:17 1445 1

原创 实现更新props

4. 这一操作可以在Dom树转化链表的过程中进行实现,设置一个alternate(交替的意思)属性代表一个指针,去指向老的节点,那么后续处理后边的节点时,我们可以通过child去指向下一个节点,当后续没有child节点时,我们可以寻找它的兄弟sibling节点,并且指向他,依次进行操作。(2)更新props里,之前我们定义的只是实现了初始化的过程,那么这一次我们对比新旧props的情况。有三种:1.老的存在,新的不存在,删除 2.新的存在,老的不存在,创建 3.新的存在,老的也存在,更新。

2024-02-02 15:39:43 1013

原创 实现事件绑定

实现事件绑定 触发事件更新 执行到这一步,接下来就是针对dom树的更新了,如何比较新旧节点,如何更新props

2024-02-01 10:49:48 455 1

原创 实现function component

实现function component 处理function component的props传参 重构function component 将处理function component和处理正常dom节点的分开封装起来。代码更加的简洁。

2024-01-31 17:45:19 576

原创 实现代码的统一提交

实现代码的统一提交 (节点转化完后,页面的渲染的统一提交进行)

2024-01-31 14:58:05 433

原创 实现任务调度器以及fiber架构

实现任务调度器以及fiber架构 浏览器提供的API:requestIdleCallback 实现fiber架构:1. 创建dom2. 处理props 3. 将树形结构转化为链表结构 4. 返回下一个要执行的任务 总结:1. 递归代码在较大数据量的情况下比较容易造成卡顿。递归代码需要一次性执行完,而且数据量特别大的时候容易出现爆内存。为了解决递归的问题,一般都会将递归代码转成遍历代码。对于 dom 树则需要转成链表结构进行遍历,边执行边转换的技巧也比较优雅。再结合指针,使得链表遍历可以随时停

2024-01-31 11:28:38 1362

原创 简单的mini-react基本搭建

简单的mini-react基本搭建 1. dom节点渲染 2. react搭建的Api的引用 3. 了解了基本的dom渲染以及api的引用。我们就可以通过命令进行框架的一个搭建,并且使用JSX文件

2024-01-21 15:33:47 431

原创 实现mini版react

实现mini版react,该文章将会从以下功能进行逐个实现,从而完成迷你版的react。1. 实现简单的mini-react基本搭建2. 实现任务调度器以及fiber架构3. 实现代码的统一提交4. 实现function component5. 实现事件绑定6. 实现更新props7. 实现diff更新children8. 实现useState9. 实现useEffect。功能实现完后,可以掌握架构的一些基本搭建,对数据结构有了近一层次的提升,并且提升了调试代码的能力以及通过debug的形式找出报错点或者使

2024-01-21 14:29:21 443

原创 for..in..和for..of..的区别

for..in..,for..of..,Uncaught TypeError: obj2 is not iterable

2023-08-17 15:59:02 144 1

原创 前端如何解决跨域?

跨域,vue

2023-07-27 17:47:35 128 1

原创 Vue+Element ui动态表格 实现表头自适应宽度

vue elementui 动态表格

2023-06-17 10:06:55 4689 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除