标签:面试

共 417 篇文章

react07-29
阅读

Effect:渲染之外的副作用

React 借鉴了许多函数式编程的理念,使得它在构建复杂用户界面时能够保持代码的简洁、可维护和可测试性。函数式编程在很大程度上依赖于纯函数 纯函数(Pure Function)是指在计算机科学和函数式编程中使用的一类函数。一个函数如果具备以下两个主要特性,我们就可以称之为纯函数: 1. 引用透明性:纯函数在相同的输入下总是产生相同的输出。也就是说,函数的输出仅依赖于其输入参数,不依赖于任何外部状态或变量。 2. 无副作用:纯函数不会改变...

#学习#面试
javascript07-29
阅读

汇总14种JavaScript循环遍历的用法

不整理不知道,整理吓一跳,原来 有这么多不同的循环方式的,包含冷门的几个我一共整理出来 。下面将会通过尽可能简单的事例进行说明。 先直入主题看看分别是哪些循环方式: 1、for循环 2、while 循环 3、do...while循环 4、forEach循环 5、map()循环 6、for…in循环 7、for...of 循环 8、filter()过滤循环 9、some()循环 10、every()循环 11、Object.keys循环对...

#学习#面试
浏览器07-25
阅读

图解浏览器的多进程渲染机制

观察浏览器的任务管理器可以发现,打开浏览器的一个页面需要多个进程,包括浏览器进程、GPU进程、网络进程、渲染进程等,有插件的话还会包括各种插件进程(Chrome选项 更多工具 任务管理器)。 本文将聚焦于 浏览器的各个进程间是如何配合,将页面呈现给用户的。 📌 你将了解到 1. 浏览器在历史发展过程中,其进程架构做了哪些调整,为什么这样调整,以及解决了哪些问题? 2. 从用户在地址栏输入URL,到页面渲染完成这之间发生了什么?回流和重...

#学习#面试
html07-24
阅读

前端面试题汇总之HTML篇(含答案)

1、什么是 DOCTYPE(⽂档类型),有何作用 (1) 解释(是什么) DOCTYPE是是HTML5的文档声明,一种标准 的 。 (2)DOCTYPE的作用包括: 1. 告知浏览器使用哪个HTML版本 :定义和声明HTML文档的类型和版本, 告诉浏览器(解析器)应该以什么样(html或xhtml)的文档类型定义来解析文档 ,例如, 声明表示文档是基于HTML5的。不同的HTML版本可能具有不同的语法和功能支持,因此DOCTYPE有助于...

#学习#面试
javascript07-24
阅读

如果一个NPM包部分功能不满足需求,如何修改其部分功能

对第三方包进行修改以适应特定需求是一个常见的场景。尽管直接修改 node modules 中的代码是可能的,但这种做法并不推荐,因为这些改动在下次运行 npm install 或更新包时会丢失。 接下来的内容中,我们将来讲解一下处理这种情况的几种推荐方法。 最常见的方法就是 Fork 源代码,通过在 GitHub 上或其他托管平台上 Fork 第三方包的源代码库。对其源代码进行修改,修改完成后将修改后的包发布到 npm 上。如果你不希望...

#学习#面试
javascript07-15
阅读

一篇弄清楚JavaScript中的 this到底指向谁

为什么要有this 1.为了让对象中的函数有能力访问对象自己的属性。 例子 如果我们想要在对象内部方法中使用对象内部的属性,就像图中的代码,它是可以在C语言里运行的,但是在JS中不可行,JS它需要使用this机制来访问(图中的myName) 2.this可以显著的提升代码质量,减少上下文参数的传递。 这种显示传参的方法有点啰嗦,如果我们采用this的话,那么就会优雅,方便很多。 运行结果是一样的 this的使用场景 可以产生作用域的地方...

#学习#面试
css07-15
阅读

不用 JS,轻松锁定页面滚动!

那么,该如何锁定页面的滚动呢? 一、传统的实现方式 传统的方式其实也不复杂,就是在打开弹窗时阻止滚动就行了,通常是改变 属性 \ 如果是在现代框架里,比如 ,可以用监听弹窗状态来实现 这样就能锁定滚动了 二、传统方式的局限 虽然上面的实现看似完美,其实还有潜在问题的。比如有多个弹窗,弹窗覆盖的情况下,这个时候锁定就会出问题了。 因为在关闭第二个弹窗的时候,页面已经解除锁定了,所以在第一个弹窗还在的时候,页面已经可以滚动了 如果想要优化这...

#学习#面试
javascript07-12
阅读

不了解事件循环EventLoop的不是一个好前端er

JavaScript是单线程的脚本语言,意味着它一次只能执行一个任务。然而,现代Web应用常常需要处理异步操作,如网络请求、定时器等,为了让线程不阻塞,Event Loop出现了,它是JavaScript引擎管理异步操作的核心机制。 在Event Loop的学习之前,我们得先弄懂 栈与队列 这两种数据结构以及JavaScript中的 宏任务与微任务 。 栈(stack) :一种先进后出的数据结构,就像一个桶,最先放的得最后才能拿出来。...

#学习#面试
javascript07-10
阅读

js核心之async和await的本质

先有问题再有答案 1. 2. 3. 4. 5. 6. 7. 前置文章 1. 2. 3. 设计目的 async/await 的设计主要是为了简化JavaScript的异步编程和提高代码的可读性和可维护性。 在JavaScript中处理异步操作,早期主要依赖于回调函数(callbacks)和事件监听,但这导致代码很容易陷入“回调地狱”,即回调函数套回调函数,使得代码难以阅读和理解。 后来Promise应运而生,虽然它改善了异步操作的书写方式...

#学习#面试
1...353637...47