- 博客(64)
- 收藏
- 关注
原创 JS 防抖与节流
再比如监听输入框的输入,不应每次输入框内容变化都触发监听,应该是用户完成一段输入后再进行触发。事件会一直等到用户完成操作后一段时间在操作,如果一直操作,会一直不触发。比如说是一个按钮,点击就发送请求,如果一直点,那么请求就会一直发布出去。,保证在特定时间内至少执行一次,无论事件触发频率如何。节流就是减少流量,将频繁触发的事件减少,并每隔一段时间执行。这种结合方式综合了时间戳和定时器的优点,既能保证在开始时立即执行函数,又能在后续按照固定时间间隔执行。:事件触发之后,执行操作,然后设置一个定时器,在。
2025-03-27 22:50:01
682
原创 Js 垃圾回收 与 内存泄漏
但 分配内存 和 释放内存 的逻辑在如 C++ 中的底层语言中是明确的,但在JS这种高级语言中,大部分是隐藏的,JS在定义一个变量时,就已经定义好了内存,同时也提供了垃圾回收的机制,自动回收不再使用的内存。本质是程序对一段内存失去了控制权:程序认为一个变量已经没用了,但垃圾回收引擎认为这个变量还在使用 不能释放,从而导致这段内存不能释放。:DOM 元素被移除后,若事件监听器未移除且回调中引用了该元素,元素无法被回收。本质是找到内存中可以释放的变量,进行释放 回收内存。3.垃圾清除,释放/回收内存。
2025-03-22 12:20:49
252
原创 js 之 lodash函数库 的下载与基础使用
Lodash是一个流行的JavaScript实用工具库,提供了许多高效、高兼容性的工具函数,能够方便地处理集合、字符串、数值、函数等多种数据类型,大大提高工作效率。
2025-03-02 14:41:08
337
原创 React:B站评论demo,实现列表渲染、删除按钮显示和功能实现、导航栏渲染切换及高亮显示、评论区的排序
5、Tab功能实现:点击谁就把谁的 type(独一无二的标识)记录下来,然后和遍历时的每一项的type 做匹配,谁匹配到就设置负责高亮的类名。判断当前登录用户信息当中的uid 和 评论数据当中的uid 一样时,才显示这条评论的删除按钮。2、删除评论功能:只显示自己评论的删除按钮;点击删除按钮,删除当前评论,列表中不再显示。4、删除功能:点击删除按钮时,传出唯一匹配项 id,以id为条件对评论列表做。
2025-03-02 14:07:59
369
原创 React 中 useState 的 基础使用
useState 是一个React Hook(函数),它允许我们向组件,从而影响组件的渲染结果。和普通JS变量不同的是,状态变量一旦发生变化,组件的视图UI也会跟着变化(数据驱动视图)。,vue可以直接使用变量 就会双向绑定。在React中,状态被认为是的,我们应该始终它,直接修改状态不能引发视图更新。
2025-03-01 00:04:18
459
原创 React 组件基础介绍
基本概念:一个组件就是用户界面的一部分,可以有自己的逻辑和外观,组件之间可以。,内部存放了组件的逻辑和试图UI,渲染组件只需要。App 可以视为最大的组件。
2025-02-28 21:21:21
418
原创 React 基础事件绑定
handleClick('jack')}>点击我</button></div>console.log('点击了按钮', name, e);return (<button onClick={(e) => handleClick('jack', e)}>点击我
2025-02-28 20:14:03
159
原创 JSX中实现条件渲染
1、&&:逻辑与运算符。在 JavaScript 里,逻辑与运算符采用的策略。若第一个操作数为false,则不会对第二个操作数进行求值,直接返回第一个操作数;true2、三目表达式。
2025-02-28 11:42:19
147
原创 JSX 实现列表渲染
item 是 map() 方法提供的当前正在处理的数组元素。在这个例子中,item 是 list 数组中的一个对象,包含 id 和 name 属性。<li>中 key={item.id} 是 react 内部用的,加上一个独一无二的key(字符串、number或id)与开发者关系不大,主要是用于提升渲染性能。map() 是 Js 数组的一个函数,会遍历数组中的每个元素,并对每个元素执行一次提供的函数。箭头函数返回一个 JSX 元素 <li>。这个 <li> 元素会作为列表项展示在 <ul> 标签内。
2025-02-27 23:34:24
256
原创 JSX基础 —— 识别JS表达式
(函数和方法本质没有区别,这里默认: 函数是自己定义的,方法是内置或第三方的)在JSX中可以通过 大括号语法 { } 识别JS中的。if 语句、switch 语句、变量声明属于。2、使用JavaScript变量。4、使用JavaScript对象。1、使用引号传递字符串。3、函数调用和方法调用。
2025-02-27 22:27:36
196
原创 JSX 的基础概述、优势与工作原理(babel解析为JS)
JSX 是 Js 与 XML(HTML) 的缩写,表示在模板结构,它是react中编写UI模版的方式。
2025-02-27 20:37:12
277
原创 vue3 中【watch】概述
结论:监视的要是对象里的属性,那么最好写函数式,注意点:若是对象监视的是地址值,需要关注对象内部,需要手动开启深度监视。定义的【对象类型】数据:直接写数据名,监视的是对象的【地址值】,若想监视对象内部的数据,要手动开启深度监视。是【对象类型】,可直接编,也可写成函数,建议写成函数。定义的【基本类型】数据:直接写数据名即可,监视的是其。定义的【对象类型】数据,且默认开启了深度监视。【对象类型】,需要写成函数形式。定义的【对象类型】数据中的。,因为它们是同一个对象。,因为不是同一个对象了。
2025-02-26 22:12:21
577
原创 setup() 语法糖:<script>标签注明setup,定义数据与方法后不需要返回
【代码】setup() 语法糖:<script>标签注明setup,定义数据与方法后不需要返回。
2025-02-21 15:38:11
112
原创 data、methods、setup关系
旧语法里的data、methods可以读出新语法setup里面的东西,但反之不行。setup没有this(undefined)
2025-02-21 10:50:27
72
原创 HTML 的 script 标签中 defer 和 async 的区别
defer 使用场景主要是确保 DOM 完全加载和多个脚本相互依赖的情况,比如确保上述代码中两个脚本按顺序加载。虽然 js 本来就是从上往下执行,但加上 defer 更严谨,可以阻止页面渲染的阻塞、网络延迟、加载时间不同而导致执行顺序的改变。async 的使用场景,比如想广告内容,不需要等整个页面加载好就跳出来,还有线上考试,网速慢导致试卷还没加载好,但计时器可能就已经开始计时了。defer 和 async 都英语控制脚本的加载和执行,都是一部加载外部的 JS 脚本文件,两者都不会阻塞 HTML 的解析。
2025-02-18 18:23:59
266
原创 Vue 中 MVVM、MVC 和 MVP 模式的区别
ViewModel: Vue 实例,它连接了 Model 和 View,通过双向数据绑定(Vue 的核心功能之一)使得 View 会自动更新以响应 Mode!·Presenter: 充当中介者,从 Model 获取数据并更新 View,而且能够处理复杂的逻辑、减轻 View 的负担。·Controller: 控制器层,协调 Model 和 View,处理用户输入并更新 Model 和 View.·View: 视图层,负责用户界面的呈现。·Model: 数据层,负责与数据库或远程服务器交互,存取和操作数据。
2025-02-18 18:06:48
382
原创 一篇搞懂同步异步:promise、async、await
经常被错误理解为多个事件同步运行,但这里是指所有事件严格按照代码顺序执行,后一个事件要等待前一个事件执行完之后才执行。promise的出现解决了多个异步函数嵌套的那种繁琐场景,但是使用起来并不简洁。:事件仍按代码的顺序执行,但后一个事件不会等待前面的事件执行结束才执行。可以理解为“等待”,专门用来修饰promise对象。:async和await两个关键字是配套使用的,:是一个类,使用时候需要实例化。中文是异步的意思,用来修饰函数。
2025-02-18 11:52:40
202
原创 常见的第三方依赖管理工具:Maven、Gradle、npm、Nuget……(什么是第三方依赖工具)
相反,你可以使用第三方依赖,例如一个流行的日期选择器插件。这样能够节省大量的开发时间和精力,并且能够利用已经测试和优化过的代码,提高功能的稳定性和用户体验。Gradle:Gradle 是一个灵活强大的构建工具,可以用于构建多种类型的项目,包括 Java、Android、Groovy 等。Maven:Maven 是一个流行的 Java 项目管理和构建工具,它可以帮助管理项目的依赖关系。通过在 Maven 的配置文件中定义依赖项,Maven 将自动下载并管理这些依赖,简化了项目构建和依赖管理过程。
2023-09-05 12:06:58
1677
原创 蓝桥web应用组网页 PPT
除了使用办公软件来制作 PPT,利用前端技术其实我们也可以制作一个在浏览器播放的 PPT,这样的 PPT 更加方便传播和查看,而且可以最大限度地利用前端技术的布局和交互能力。本题请实现一个讲授 HTML 基础知识的网页 PPT。
2023-04-07 09:54:31
178
原创 【无标题】
方法,可以在DOM树中遍历当前元素的相邻兄弟节点,并将这些兄弟节点组成一个新的jQuery对象返回。具体来说,该代码会监听class属性名为"option"的所有HTML元素的点击事件,并在点击时执行相应的回调函数。是jQuery封装的一个DOM遍历方法,用于查找当前元素的所有兄弟元素。方法将兄弟元素上的"active"类名移除。这样,当用户选择某个元素时,被选择的元素会添加一个"active"类,其他元素则会移除该类。方法获取该元素的兄弟元素,即其他class属性名为"option"的元素,然后再调用。
2023-04-07 08:25:40
154
原创 归并排序思路及例题
//第一步:找到分界点,分成子问题 int mid = l + r >> 1; //第二步:递归处理子问题 merge_sort(q, l, mid); merge_sort(q, mid + 1, r); //第三步:*合并子问题*
2022-07-17 15:54:43
159
原创 Python 列表修改、增加、删除元素的方法
修改列表元素的方法列表名[索引] = 新值增加元素的方法:如列表名为 s ,需要添加的元素为 [a, b, c](1)列表名.append(新元素)append每次只能添加一个元素到列表尾(2)列表名.insert(索引, 新元素)(3)列表名.extend( [新元素的集合] ) extend()方法可以一次添加多个元素(4) 列表名[len(列表名):] = [新元素的集合]...
2022-04-19 20:46:05
1501
原创 Python入门—乘法表、找素数
>>> i = 1>>> while i <= 9:... j = 1... while j <= i:... print(j, "*", i, " =", i * j, end = " ")... j += 1... print( )... i += 1print默认是打印一行,结尾加换行。end= " " 意思是末尾不换行,加空格。代码结果如图..
2022-04-19 16:39:42
384
原创 DFS 之 全排列
题目描述给定一个整数 n,将数字 1 ∼ n 排成一排,将会有很多种排列方法。现在,请你按照字典序将所有的排列方法输出。输入格式共一行,包含一个整数 n。输出格式按字典序输出所有排列方案,每个方案占一行。数据范围: 1 ≤ n ≤ 7输入样例:3输出样例:1 2 31 3 22 1 32 3 13 1 23 2 1https://www.acwing.com/problem/content/844/思路:dfs深度优先遍历的思想比较简.
2022-03-31 21:26:45
1502
原创 哈希表【数组模拟散列表】(开放寻址法和拉链法)
例题描述:维护一个集合,支持如下几种操作:I x,插入一个数x; Q x,询问数x是否在集合中出现过;现在要进行 N 次操作,对于每个询问操作输出对应的结果。输入格式第一行包含整数 N,表示操作数量。接下来 N 行,每行包含一个操作指令,操作指令为 I x,Q x 中的一种。输出格式对于每个询问指令 Q x,输出一个询问结果,如果 x 在集合中出现过,则输出 Yes,否则输出 No。每个结果占一行。数据范围: 1 ≤ N ≤ 1051 −10^9 ≤...
2022-03-28 22:41:53
192
原创 堆排序(用数组模拟小根堆)
输入一个长度为 n 的整数数列,从小到大输出前 m 小的数。输入格式第一行包含整数 n 和 m。第二行包含 n 个整数,表示整数数列。输出格式共一行,包含 m 个整数,表示整数数列中前 m 小的数。数据范围1 ≤ m ≤ n ≤ 1051,1 ≤ 数列中元素 ≤ 1091输入样例:5 34 5 1 3 2输出样例:1 2 3原题链接:https://www.acwing.com/problem/content/840/#include<.
2022-03-26 23:28:23
1858
原创 并查集维护树的深度(即每个点到根节点的距离)
题目:食物链描述:动物王国中有三类动物A,B,C,这三类动物的食物链构成了有趣的环形。A吃B,B吃C,C吃A。现有N个动物,以 1 ∼ N编号。每个动物都是A,B,C 中的一种,但是我们并不知道它到底是哪一种。有人用两种说法对这N个动物所构成的食物链关系进行描述:第一种说法是1 X Y,表示X和Y是同类。第二种说法是2 X Y,表示X吃Y。此人对N个动物,用上述两种说法,一句接一句地说出K句话,这K句话有的是真的,...
2022-03-26 13:57:59
456
原创 连通块中 点的数量
题目描述:给定一个包含n 个点(编号为1∼n)的无向图,初始时图中没有边。现在要进行m个操作,操作共有三种:C a b,在点aa和点bb之间连一条边,a和b可能相等; Q1 a b,询问点a和点b是否在同一个连通块中,a和b可能相等; Q2 a,询问点a所在连通块中点的数量;输入格式第一行输入整数n和m。接下来m行,每行包含一个操作指令,指令为C a b,Q1 a b或Q2 a中的一种。输出格式对于每个询问指令Q1...
2022-03-24 23:11:23
470
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人