八股文合集
小小八股文,拿下!!!
小九大大碗
这个作者很懒,什么都没留下…
展开
-
前端小知识之大文件上传
通过合理的设计和实现,可以为用户提供高效、稳定且安全的文件上传体验。对于非常大的文件或需要复杂处理的任务,可以使用Web Workers来在后台线程中执行这些任务,以避免阻塞主线程并影响用户体验。切片上传是一种将大文件分割成多个较小的数据块(chunk)并分别上传的方法。更好的用户体验:可以通过进度条显示每个数据块的上传进度,提供更详细的上传状态反馈。恢复上传:如果某个数据块上传失败,可以只重新上传该失败的数据块,而不是整个文件。验证上传的文件类型:确保上传的文件类型符合期望,避免潜在的安全风险。原创 2024-08-01 22:43:35 · 433 阅读 · 0 评论 -
防抖、节流手撕
/ timer 变量被定义在 debounce 函数的闭包中if (timer!== null) {// 使用 apply 来确保正确的 this 上下文和参数传递}, time);// 使用示例}, 1000);// 频繁调用 debouncedFn,但函数只会在最后一次调用后1000ms执行一次。原创 2024-07-31 22:21:24 · 226 阅读 · 0 评论 -
八股文(语法降级、babel、抽象语法树(AST)、文档碎片)
抽象语法树(Abstract Syntax Tree,简称AST)是源代码的树状表现形式,其中树的每个节点都表示源代码中的一种结构,如表达式、语句或声明。减少DOM操作:在没有文档碎片的情况下,直接向DOM树中添加或移除节点,尤其是频繁地进行此类操作,会导致浏览器不断进行重排和重绘,大大降低页面的渲染速度。综上所述,语法降级的原理和Babel的基本原理都是基于将JavaScript代码转换为AST,然后对AST进行转换操作,最后生成向后兼容的代码的过程。Babel的优势在于它可以根据需要进行定制和扩展。原创 2024-07-30 23:02:15 · 1607 阅读 · 0 评论 -
前端小小知识点
px(像素)、em(相对父元素)、rem(相对根元素)、vw(相对视窗宽度)、vh(相对视窗高度)undefined属于当变量未定义的时候、没有传参、函数没有return、对象没有该属性却访问的时候。优点:变量私有化、延长变量的生命周期、创建模块化、实现回调函数和异步编程。变成标准盒模型是box-sizing:content-box;变成怪异盒模型是box-sizing:border-box;console.log(k) //循环索引。盒模型分为标准盒模型和ie盒模型(怪异盒模型)原创 2024-07-29 22:08:46 · 205 阅读 · 0 评论 -
说说浮动吧
②使用bfc:给父元素添加overflow:hidden;浮动带来的问题:父元素高度塌陷(没有子元素支撑导致高度塌陷)、浮动下沉(浮动的元素可能会覆盖下方的非浮动元素)、布局兼容性。浮动属性设置:float:left;(默认值)float:inherit;①clear属性:在浮动元素的下方添加一个空元素,并给元素设置chear: both;③添加伪元素:使用:after伪元素,并设置clear:both;①多栏布局:让元素浮动到左侧或者右侧,可以形成左侧导航栏或者右侧导航栏。③浮动菜单或者浮动广告。原创 2024-07-28 20:29:02 · 167 阅读 · 0 评论 -
vue中的keep-alive组件详解
keep-alive是一个内置组件,它的主要作用是缓存不活动的组件实例,而不是销毁它们。这可以达到节省请求、优化性能的目的。触发时机:当组件被keep-alive缓存后,再次进入该组件的可见区域时触发。用途:主要用于执行组件重新激活时需要的操作,如更新数据或执行DOM操作。这个钩子相当于传统意义上的组件重新渲染或激活的入口。触发时机:当组件被keep-alive缓存,且从可见区域离开时触发。用途:执行组件停用时的清理工作,如取消定时器、解绑事件监听器等。原创 2024-07-27 23:34:30 · 595 阅读 · 0 评论 -
promise你知多少?
promise 三种状态:pedding(进行中)、fulfilled(已成功)、rejected(已失败)。特点:状态不受外界的影响, 一旦状态改变就不会再变(pending–>fulfilled,pending–>rejected)。Promise是一个构造函数,用来生成promise实例。Promise构造函数接受一个函数作为参数,这个函数有两个参数。原创 2024-07-26 22:19:00 · 401 阅读 · 0 评论 -
手写call,apply
小小记忆点:call和apply很相似,一个是传入多个参数,一个是传入数组,怎么记住呢?传入数组的是apply,数组的英文是array,他们都是a开头!原创 2024-07-25 23:49:32 · 151 阅读 · 0 评论