- 博客(334)
- 收藏
- 关注
原创 防抖 节流
设置clearTimeout为什么还要timer=null 设置延时器之前先清除下延时器,不然每次事件触发都会多一个延时器,延时器之间互相干扰,造成紊乱。立即执行:即多次触发事件,第一次会立即执行函数,之后在设定wait事件内触犯的事件无效,不会执行。非立即执行函数: 多次触发事件,只会在最后一次触发事件后等待设定的wait时间结束时执行一次。立即节流 连续点击的话,第一下点击会立即执行一次 然后每过 wait 秒执行一次。非立即节流 连续点击的话,每过 wait 秒执行一次。
2024-03-03 17:45:29 354
原创 【项目】新增签名形式数据,并封装了签名数据组件,实现了录入数据的功能
【代码】【项目】新增签名形式数据,并封装了签名数据组件,实现了录入数据的功能。
2024-02-29 22:22:21 330
原创 css复习
border-collapse:collapse (表示相邻边框合并在一起)行内或行内块元素水平居中:text-align:center;border:1px solid red (没有顺序)单元格的border会发生重叠,如果不想要重叠设置。盒子阴影不占用空间,不会影响其他盒子排列。传统网页布局三种方式:标准流 浮动 定位。padding影响盒子大小的好处使用。盒子阴影:border-shadow。
2024-02-23 02:13:50 776
原创 手写单例模式
单例模式是一种常用的模式,有些对象往往只需要一个,比如:线程池、全局缓存、浏览器中的 window 对象等。在 Javascript 开发中,单例模式的用途同样非常广泛,比如做登录弹框,它在当前页面是唯一的,无论单击多少次,都只会创建一次,这就非常适合用单例模式来创建。“代理版”单例模式:遵循单一原则,创建对象的类和保证单例的类分开定义。定义:保证一个类仅有一个实例对象,并提供一个访问它的全局访问点。二、JS手写实现单例模式。
2023-10-31 15:39:24 142
原创 git学习
也可以直接从AppStore安装Xcode,Xcode集成了Git,不过默认没有安装,你需要运行Xcode,选择菜单“Xcode”->“Preferences”,在弹出窗口中找到“Downloads”,选择“Command Line Tools”,点“Install”就可以完成安装了。分支,就像平行宇宙,廖雪峰老师如是说。你创建了一个属于你自己的分支,别人看不到,还继续在原来的分支上正常工作,而你在自己的分支上干活,想提交就提交,直到开发完毕后,再一次性合并到原来的分支上,这样,既安全,又不影响别人工作。
2023-10-24 14:48:12 311
原创 手写单例模式
而如果,还没有实例化的时候,多个线程进去了,也没有事,因为里面的方法有锁,只会让一个线程进入最内层方法并实例化实例。因为,即使实例已经实例化了,既后续不会再出现线程安全问题了,但是锁还在,每次还是只能拿到锁的线程进入该方法,会使线程阻塞,等待时间过长。说明: 先不管需不需要使用这个实例,直接先实例化好实例 (饿死鬼一样,所以称为饿汉式),然后当需要使用的时候,直接调方法就可以使用了。这样做的好处是:有些实例,全局只需要一个就够了,使用单例模式就可以避免一个全局使用的类,频繁的创建与销毁,耗费系统资源。
2023-10-14 23:26:21 465
原创 一次性插入一千个 <li>元素到一个 <ul>标签中
1.使用文档片段(Document Fragment):文档片段是一种轻量级的临时容器,可以将多个元素附加到其中,然后再一次性将文档片段中的内容插入到HTML文档中。这样可以减少对DOM的操作次数,提高性能。2.使用innerHTML:使用innerHTML可以直接将HTML字符串插入到元素中,这种方法简洁明了,但需要注意在使用时确保HTML字符串的安全性。
2023-09-24 20:03:16 233
原创 js继承实现方式
函数实现了将子类的原型对象设置为父类的实例,并修正子类的构造函数引用。这样子类既能够继承父类的原型方法,又能够通过自身的构造函数进行属性的初始化。寄生组合式继承是一种优化过的继承方式,结合了原型链继承和借用构造函数继承的优点。它避免了父类构造函数被调用两次的问题,同时能实现正确的原型链继承。寄生组合式继承是目前广泛应用的一种继承方式,它兼具了性能和灵活性,并且能够避免原型链继承和构造函数继承的缺点。当涉及到 JavaScript 的继承时,有多种实现方式。
2023-09-14 00:42:36 64
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人