虚拟列表
唔~,好久没有更新博文了,一年前的这个时候用 Vue 实现过一版虚拟列表,不过现在已经忘光光了,故写一篇博文帮忙回忆与巩固一下虚拟列表的知识。 前言 本文对虚拟列表出现的原因与解决的问题不再介绍,着重讲解虚拟列表实现的思路以及原理。 技术栈 React Vite TS 预览链接 Demo 预览链接:…
唔~,好久没有更新博文了,一年前的这个时候用 Vue 实现过一版虚拟列表,不过现在已经忘光光了,故写一篇博文帮忙回忆与巩固一下虚拟列表的知识。 前言 本文对虚拟列表出现的原因与解决的问题不再介绍,着重讲解虚拟列表实现的思路以及原理。 技术栈 React Vite TS 预览链接 Demo 预览链接:…
本文主要记录了博主的 Leetcode 算法刷题记录,方便以后查询复习。 图论 岛屿数量 LeetCode 原题链接:200. 岛屿数量 深度优先遍历,基本思路为,遇到一个岛就把这个岛给 沉没掉 ,然后统计数加 1。 腐烂的橘子 LeetCode 原题链接:994. 腐烂的橘子 广度优先遍历,利用循…
本文主要记录了博主的 Leetcode 算法刷题记录,方便以后查询复习。 链表 相交链表 LeetCode 原题链接:160. 相交链表 哈希表存储遍历的节点,然后进行操作。第二种方法技巧性比较强,利用路径长度相同会回到相交的点的做法来求解。 反转链表 LeetCode 原题链接:206. 反转链表…
本文主要记录了博主的 Leetcode 算法刷题记录,方便以后查询复习。 哈希表 两数之和 LeetCode 原题链接:1. 两数之和 这道题首先考虑的是通过两层 for 循环遍历查询,但这样有很多无意义的查找。因此我们可以采用 哈希表 来减少查找的时间复杂度,此时查找顺序是 往后 而不是往前。注意…
本文主要记录了关于前端面试常考的手写代码题,常看常复习。 JS 基础篇 深入了解 JS 这门语言的运行逻辑与机制,尝试实现其内部的方法。 ES5 实现继承 使用 ES5 的语法实现继承,有几个注意点: 使用 Object.create 方法,构造以父类的 prototype 为原型的新对象,防止对子…
之前 TS 笔记由于放在长文章后面阅读体验不太好,故单独抽离出来一篇文章。 本文主要记录了 TS 的学习知识与笔记。 基本类型 TS 有以下几种数据类型: 基础类型 :包括 boolean (布尔值)、 number (数字)、 string (字符串)、 null (空值)、 undefined …
早就想好好总结一下 Intersection Observer 这个 API,苦于一直没有时间,今天就来好好总结一下这个 API。 本篇文章将介绍现代 WebAPI Intersection Observer(元素交集观察器)。 背景 交叉观察器 API(Intersection Observer …
本篇文章将介绍数据结构与算法的基本概念(前端版)。 去年这个时间我在写数据结构与算法的博文,今年还在写,令人感叹。 基础 算法的基本概念 算法( Algorithm )是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制 也就是说,能够对一定规范的…
基础 语法基础与规范 1. JSX 注意事项。 JSX 必须有一个根节点,如果没有,可以用幽灵节点 < 代替。 所有标签必须闭合,成对闭合或者自闭和都可以。 JSX 采用小驼峰命名法,对于 class 要转化成 className , for 需要转化成 htmlFor ,以防止 js 关键字冲突。…
本文主要记录了关于 Vue3 的相关笔记,主要记录 Vue3 及其生态的使用与技巧,不定时更新。 基础 创建一个 app 实例并挂载 应用根组件的内容将会被渲染在容器元素里面。容器元素自己将不会被视为应用的一部分。 .mount() 方法应该始终在整个应用配置和资源注册完成后被调用。同时请注意,不同…
本文主要记录了关于 Vue2 的相关笔记,主要记录 Vue2 的一些基础概念与知识,帮助理解 Vue3。 Vue 的核心特性 数据驱动(MVVM) 数据驱动( MVVM ): MVVM 表示的是 Model View ViewModel MVVM 模型由以下三个部分组成: View :表示当前页面所…
本文主要记录了关于前端面试常考与常问的知识笔记,内容较多,不间断更新。 CSS 1. CSS 中盒模型有传统的 content box 与 border box ,二者区别在于前者的 width 与 height 设置的是 content box ,而后者设置的是 border box ,注意背景图…