- 博客(39)
- 收藏
- 关注
原创 原生websocket简单介绍
原生websocket仅提供了较为简单的机制(如下)其中前半部分是事件,后面是执行的动作。用于客户端与服务端双向通信的工具。主动向服务器发送数据。
2025-12-10 21:15:28
270
原创 raf节流
告诉浏览器——你希望执行一个动画,并且要求浏览器在下次重绘之前调用指定的回调函数更新动画。该方法需要传入一个回调函数作为参数,该回调函数会在浏览器下一次重绘之前执行。
2025-11-05 17:28:24
917
原创 vue懒加载
懒加载是一种延迟加载资源的优化策略,常用于Vue中的组件和图片加载。主要优点包括减少初始加载时间和按需加载避免资源浪费。组件懒加载可通过defineAsyncComponent实现异步加载,支持加载状态和错误处理;也可利用<component>动态组件结合条件渲染实现按需加载。图片懒加载通常通过自定义指令或组件实现,在需要时加载图片资源。这些方法能有效提升应用性能,优化用户体验。
2025-10-16 16:19:47
306
原创 vue动画内置组件
用于对 v-for 列表中的元素或组件的插入、移除和顺序改变添加动画效果。如下来自vue官方文档,提供了dom元素,插入。我们使用一个实例,来说明各类的添加与删除。的每一个子节点都要有一个唯一的。添加apper属性与tag。
2025-09-14 22:17:08
996
原创 vue3的选项式与组合式
选项式 API 和组合式 API 各有其优势和适用场景。选项式 API 提供了一种结构简单、易于学习的方式,适合小型项目和新手开发者。组合式 API 则提供了更好的逻辑组织、复用和类型支持,适合大型复杂应用。Vue 3 同时支持这两种 API 风格,开发者可以根据项目需求和个人偏好灵活选择。在实际开发中,甚至可以混合使用两种 API,在同一个项目中根据组件的复杂程度选择最合适的 API 风格。无论选择哪种 API,理解其背后的设计理念和最佳实践都是编写高质量 Vue 应用的关键。
2025-09-07 20:53:19
1012
原创 异步编程与面向对象知识总结
函数的属性,指向一个对象,这个对象是通过该函数作为构造函数创建的所有实例的原型修改原型会影响所有已创建的实例,但重写整个原型对象不会影响已创建的实例。如下重写了整个原型对象,但依旧输出1,只有新建的才输出2个人理解是new调用构造函数时,会给实例的__ proto__,(也就是函数的prototype),赋予函数的prototype值,也就是浅拷贝,二者指向同一对象,而再次新建时修改了原指针,指向了新的原型对象,但旧实例,还是有原对象的索引。
2025-08-31 22:18:26
980
原创 数据类型Symbol
ES5 的对象属性名都是字符串,这容易造成属性名的冲突。为了保证属性名的独一无二ES6 引入了一种新的SymbolSymbol值通过Symbol()函数生成。可以接受一个字符串作为参数,表示对 Symbol 实例的描述。即使描述一样 但symbol并不会一样//输出Symbol()//输出Symbol(123)//输出false描述只是让人容易区分,并其可以转换为字符串,(内部为对应描述的值)//输出Symbol(11111)
2025-08-02 17:41:02
388
原创 js生成器
生成器是 ES6 中新增的一种特殊的函数,所以也称为“生成器函数”。next的参数会将值传给当前阶段(未执行当前next时)的所暂停的yield。通过生成器next方法可以控制其迭代,next方法则返回下一个状态的生成器。当通过yield赋值时,yield就不能与其他执行代码同行,否则会报错。在生成器函数中通过yield来分割,每当执行时会暂停到。由于生成器是一种特殊的迭代器,故生成器的属性与其类似。可以看出,有效的next方法个数就是yield+1个。调用生成器函数返回一个新的对应的生成器,
2025-07-23 20:08:53
534
原创 nodejs模块化
概念:将一个复杂的程序依据一定的规则(规范)封装成几个块(文件),并组合在一起。模块的内部数据、实现是私有的, 只是向外部暴露一些接口(方法)与外部其它模块通信。避免命名冲突,减少命名空间污染降低耦合性;更好地分离、按需加载高复用性:代码方便重用,别人开发的模块直接拿过来就可以使用,不需要重复开发类似的功能。高可维护性:软件的声明周期中最长的阶段其实并不是开发阶段,而是维护阶段,需求变更比较频繁。使用模块化的开发,方式更容易维护。部署方便方法优点缺点CommonJS。
2025-07-22 20:56:57
388
原创 js迭代器
迭代器是 JSt 中一种特殊的对象,它提供了一种统一的、通用的方式遍历个各种不同类型的数据结构。可以遍历的数据结构包括:数组、字符串、Set、Map 等可迭代对象。我们也可以自定义实现迭代器,以支持遍历自定义的数据结构。
2025-07-21 21:00:31
392
原创 Promise入门
Promise有三种状态pending:等待中。属于初始状态,既没有被兑现,也没有被拒绝。fulfilled:已兑现/已解决/成功。执行了resolve() 时,立即处于该状态,表示 Promise已经被解决,任务执行成功rejected:已拒绝/失败。执行了 reject()时,立即处于该状态,表示 Promise已经被拒绝,任务执行失败。Promise构造函数如下// 1. 定义 executor 函数}, 300);// 2. 把 executor 传入 Promise 构造函数。
2025-07-19 20:22:36
871
原创 变量提升知识总结
提升是指解释器在执行代码之前,似乎将函数、变量的声明移动到其作用域的顶部的过程。此文介绍其中的1. 能够在声明变量之前在其作用域中使用该变量的值(函数的提升)2. 能够在声明变量之前在其作用域中引用该变量而不报错,但值始终是 undefined(var提升)3.变量的声明导致在声明行之前的作用域中发生变化。(let,const的提升)
2025-07-18 21:23:41
433
原创 正则表达式梳理
用于判断字符串是否符合该规则。以下总结js中一些常用的规则。此时则只有字符a匹配该规则。这是一些综合以上规则的判断。,满足其中任一即匹配。
2025-07-16 21:17:44
311
原创 dom节点操作方法与事件冒泡总结
事件冒泡是指当某个元素上的事件被触发时,该事件会向父级元素传递,直到传递到 document 对象的过程。在此过程中,所有绑定在这些父级元素上的相同类型的事件处理程序都会依次被触发。利用此机制可以给父元素设置监听,当子元素触发时就会自动转为父元素的函数触发。若想要取消父元素也会触发则检测触发对象的tagname是否为子元素即可。在之前,要监听多个元素的事件要用for循环来逐个添加较为麻烦。dom树也就是由html标签之间的关系结构组成的树,如图。对其中的节点进行操作,如增删改查js都有对应的方法。
2025-07-15 21:05:12
370
原创 7.14练习案例总结
api部分算法部分js字符串无法修改实例随机点名用事件监听实现表单交互功能,间歇函数和随机数实现生成随机人名轮播图根据课程重写了此部分三次第一次实现刷新 切换随机图第二次实现定时轮播第三次实现表单交互
2025-07-14 20:59:37
456
原创 htmlcss考核
为何:为了解决浮动元素的父级高度坍塌导致的影响布局问题清除浮动的方法有以下几种1.父元素设置overflow:hidden2.父容器::after 伪元素设置clear:both3.空标签法如下,在父元素的末尾加上一个空标签即可二.怎么实现左边宽度固定右边宽度自适应的布局?使用flex布局在其中放置一个笃定大小的盒子在左边右边边的盒子设置为flex:1;最终右边盒子会占据剩余的部分即随着父元素变化而变化代码如下效果如图父级为flex布局时若该元素设为flex:1;而同级元素的fl
2025-06-15 18:11:31
2149
原创 练习案例总结
(对于hover部分查看元素大小时 可以在hover触发时 按ctrl+shift+c 即可查看对应的元素大小)如图 当鼠标沿着箭头方向移动时 我们希望经过蓝色空隙部分时选项依旧存在。(1)若将固定在页面右下角的部分仅仅只设为fixed那么在缩放时其将一直存在。也可以对banner设置padding值来防止布局的改变。在写热搜部分是后面的 方块效果可以通过伪元素选择器来写。(2)同理对于banner部分的缩放可以用此方法实现。而原路返回时 则希望经过空隙时隐藏。最下面的部分单独设置即可。
2025-06-08 17:14:54
398
原创 本周问题汇总
在完成黑马案例的就业指导部分时,通过添加swiper来增添左右箭头时未实现一致效果如图调试发现其大小为0应该是课程中为swiper5,而目前已经更新至11的问题但通过修改样式达成 了同样效果操作为1.在swiper中加入左右箭头盒子2.通过定位将其移动至对应位置.right {top: 50%;效果如图。
2025-06-02 16:12:45
221
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅
1