首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

分享63个最常见的前端面试题及其答案

09、描述事件冒泡 事件冒泡是一种机制,其中内部元素中发生的事件通过 DOM 层次结构中的父元素传播或“冒泡”。它从最里面的元素开始,一直持续到文档级别,一路触发附加到每个父元素的事件处理程序。...集合不能包含重复值,而数组可以。当唯一性很重要时,集合很有用。 31、你能举一个解构对象或数组的例子吗? 解构允许您将对象或数组中的值提取到不同的变量中。...37、您能说出对于 JavaScript 应用程序来说很重要的两种编程范例吗 原型继承和函数式编程是 JavaScript 中两个重要的编程范式。 38、什么是函数式编程?...此外,数据库优化、高效的资源利用和性能监控对于扩展网站至关重要。 44、JavaScript 中的 polyfill 是什么?...此外,它还提供了对特定公司常见问题的见解。通过利用 frontendlead.com,您可以增强您的知识并为前端工程面试做好充分准备。 63、您能描述一下渐进增强和优雅降级之间的区别吗?

8.4K21

分享 63 道最常见的前端面试及其答案

09、描述事件冒泡 事件冒泡是一种机制,其中内部元素中发生的事件通过 DOM 层次结构中的父元素传播或“冒泡”。它从最里面的元素开始,一直持续到文档级别,一路触发附加到每个父元素的事件处理程序。...集合不能包含重复值,而数组可以。当唯一性很重要时,集合很有用。 31、你能举一个解构对象或数组的例子吗? 解构允许您将对象或数组中的值提取到不同的变量中。...37、您能说出对于 JavaScript 应用程序来说很重要的两种编程范例吗 原型继承和函数式编程是 JavaScript 中两个重要的编程范式。 38、什么是函数式编程?...此外,数据库优化、高效的资源利用和性能监控对于扩展网站至关重要。 44、JavaScript 中的 polyfill 是什么?...此外,它还提供了对特定公司常见问题的见解。通过利用 frontendlead.com,您可以增强您的知识并为前端工程面试做好充分准备。 63、您能描述一下渐进增强和优雅降级之间的区别吗?

34930
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    前端面试题汇总

    (2)将JavaScript和CSS作为外部文件来引用:在实际应用中使用外部文件可以提高页面速度,因为JavaScript和CSS文件都能在浏览器中产生缓存。...、事件绑定方法 关于JavaScript中事件绑定的方法总结_javascript技巧_脚本之家 16、所谓的 Virtual DOM 算法。...,也可以更改数据,在这里更改数据不会触发updated函数') this.msg+='!!!'...:虚拟dom已经创建完成,马上就要渲染,在这里也可以更改数据,不会触发updated') this.msg+='@@@@' console.log('在这里可以在渲染前最后一次更改数据的机会...对于问题一,传参的方法对于多层嵌套的组件将会非常繁琐,并且对于兄弟组件间的状态传递无能为力。对于问题二,我们经常会采用父子组件直接引用或者通过事件来变更和同步状态的多份拷贝。

    2.8K30

    详解 JS 中的事件循环、宏微任务、Primise对象、定时器函数,以及其在工作中的应用和注意事项

    事件循环的执行顺序 在JavaScript的执行模型中,事件循环按照以下顺序处理任务: 执行全局脚本代码,这些同步代码直接运行。 当执行栈为空时,事件循环会查看微任务队列。...开始下一轮事件循环,处理下一个宏任务。 通过这种机制,JavaScript可以在单线程中有效地处理异步事件,同时保持代码执行的顺序和预期效果。...中) IO操作:例如文件读写、网络请求等 UI渲染:浏览器需要重新渲染页面时触发的任务 requestAnimationFrame:动画渲染函数 拓展提问:点击和键盘事件是宏任务吗?...因此,可以说点击和键盘事件是作为任务处理的,而不特定分类为宏任务或微任务。 这种机制确保了 JavaScript 可以在单线程环境中高效地处理异步事件和操作,同时保持代码执行的顺序性和可预测性。...;需要其他异步线程支持 微任务 没有明确的异步任务需要执行,只有回调,不需要其他异步线程支持 存放位置 宏任务 中的事件放在callback queue中,由事件触发线程维护 微任务 的事件放在微任务队列中

    29510

    JavaScript是什么意思?

    需要的话都可以自行来获取下载。 Javascript(浏览器中)可以做什么? 与10年前推出的版本相比,现代JavaScript非常强大。...我可以称之为“安全”编程语言,因为它最初是为不需要它的浏览器创建的。在浏览器中,JavaScript可以执行许多操作,例如与用户的交互,网页操作和Web服务器。...● 浏览器中的JavaScript可能无法读取/写入硬盘上的任意文件,复制它们或执行程序。基本上它没有直接访问OS系统功能。 ● 它无法保护您的页面源或图像。...完成此操作后,JavaScript将按照在网页上找到的顺序执行:定义变量和函数,执行函数调用,触发事件处理程序等。这些活动导致DOM由JavaScript更新并且由浏览器立即呈现。...如何在网页中加载JavaScript? 在网页中加载JavaScript的最常用方法是使用脚本 HTML标记。根据您的要求,您可以使用以下方法之一。

    10.9K10

    【Java 进阶篇】JavaScript 与 HTML 的结合方式

    JavaScript 的嵌入方式 要在HTML中嵌入JavaScript代码,有几种方式可以选择: 1.1 内联方式 内联方式是将JavaScript代码直接嵌入到HTML文件中的方法。...1.2 外部文件方式 为了更好地组织代码并提高可维护性,你可以将JavaScript代码保存在外部文件中,并在HTML中引入这些文件。这样可以将JavaScript代码与HTML分离,使代码更清晰。...以下是一些常见的HTML事件: onclick:单击(或触摸)元素时触发。 onmouseover:鼠标悬停在元素上时触发。 onchange:元素的值更改时触发。...onsubmit:表单提交时触发。 onload:文档加载完成时触发。 你可以使用内联方式或外部文件方式添加事件处理程序。以下是一个使用内联方式的示例: 外部文件方式组织和存储JavaScript代码。 合理使用事件处理程序,不滥用内联事件处理。 使用现代的DOM操作方法,避免过时的方法。 测试你的代码以确保它在不同的浏览器中运行良好。 6.

    72940

    Salesforce Integration 概览(三) Remote Process Invocation—Fire and Forget(远程进程调用-发后即弃)

    •集成是否基于特定事件的发生,例如Salesforce用户界面中的按钮点击,或基于DML的事件?   •保证Salesforce向远程系统发送消息是一项要求吗?   ...Platform Event简化了传递更改和响应更改的过程,而无需编写复杂的逻辑,我们可以通过 Process 或者 Flow去发布事件。一个或多个订阅端可以侦听同一事件并执行操作。...outbound message发送的消息的顺序是按照顺序的。...此外,平台事件不会在数据库事务中处理。因此,已发布的平台事件无法在事务中回滚。 恢复—由于此模式是异步的,远程系统必须根据服务的服务质量要求启动重试。...•通过实施适当的防火墙机制来保护远程系统 Platform Events 对于平台事件,订阅的外部系统必须能够对Salesforce流式API进行身份验证。

    1.5K10

    急速 debug 实战一(浏览器-基础篇)

    单步调试代码 一个常见的错误原因是脚本执行顺序有误。 可以通过单步调试代码一次一行地检查代码执行情况,准确找到执行顺序异常之处。...方法 3:控制台 除了查看 console.log() 消息以外,您还可以使用控制台对任意 JavaScript 语句求值。 对于调试,您可以使用控制台测试错误的潜在解决方法。...事件侦听器 在触发 click 等事件后运行的代码中。 异常 在引发已捕获或未捕获异常的代码行中。 函数 任何时候调用特定函数时。 代码行断点 在知道需要调查的确切代码区域时,可以使用代码行断点。...Breakpoints 窗格中取消激活的断点已停用且处于透明状态 DOM 更改断点 如果想要暂停更改 DOM 节点或其子级的代码,可以使用 DOM 更改断点。...Mouse inner 如果是通过 mouse (鼠标事件来触发的)并且触发元素是写在触发元素内的情况。可以通过在当前触发元素。

    3.3K10

    提高JavaScript动画的性能

    在CSS触发器上,您将找到CSS属性的最新列表,其中包含了它们在每个现代浏览器中触发的工作的信息,包括第一次更改和随后的更改。 ?...更改仅触发复合操作的CSS属性是优化web动画性能的一个简单而有效的步骤。...Call requestAnimationFrame again outside the callback functionrequestAnimationFrame( makeChange ); 4、将事件与代码中的动画分离...对于不需要访问DOM的复杂JavaScript操作,可以考虑使用Web worker。工作线程执行任务时不会影响用户界面。...6、利用浏览器的DevTools来控制性能问题 您的浏览器的开发工具提供了一种方法来监控您的浏览器在运行JavaScript代码或第三方库的过程中有多困难。它们还提供有关帧速率和更多的有用信息。

    2K20

    对话框、模态框和弹出框看起来很相似,它们有何不同?

    利用 CSS 中的 z-index 属性,你可以根据具体情况决定其位置,使其偏离默认的顺序,这样你基本上可以决定自己的图层顺序。...它们的主要功能是警告用户,浏览器将通过触发系统警告事件向可用性 API 发送警告信息来实现这一点。它们是我们上面讨论的浏览器 alert() 对话框的 ARIA 等价物。...您正在编辑一些重要内容,并不小心按下了 Command + W 快捷键,以关闭当前标签页。一个警告对话框出现,询问您是否真的想“离开”,不需要先“保存您的更改”吗。...对于弹出窗口,它只在“有意义的地方”的情况下执行(请参阅弹出窗口解释器)。如果用户没有触发它,将它移动到 DOM 中较早的适当位置。 当模态对话框关闭时:如果用户触发了它,将焦点返回到触发器。...对于 popover,只有在“有意义”的情况下才会执行 (请参考 popover 解释器)。如果用户没有触发它,将焦点移动到 DOM 中适当的位置。

    3.9K00

    JavaScript 编程精解 中文第三版 十五、处理事件

    传播 对于大多数事件类型,在具有子节点的节点上注册的处理器,也将接收发生在子节点中的事件。若点击一个段落中的按钮,段落的事件处理器也会收到点击事件。...若点击向下的箭头,浏览器会向下翻页。若右击鼠标,可以得到一个上下文菜单等。 对于大多数类型的事件,JavaScript 事件处理器会在默认行为发生之前调用。...要注意什么时候输入了内容,每当用户更改其内容时,可以键入的元素(例如和标签)触发"input"事件。为了获得输入的实际内容,最好直接从焦点字段中读取它。...为了获得鼠标事件触发的精确信息,你可以查看事件中的clientX和clientY属性,包含了事件相对于窗口左上角的坐标(以像素为单位)。...鼠标事件只涵盖了简单情况下的触摸交互 - 如果您为按钮添加"click"处理器,触摸用户仍然可以使用它。 但是像上一个示例中的可调整大小的栏在触摸屏上不起作用。 触摸交互触发了特定的事件类型。

    5.6K20

    「面试题」20+Vue面试题整理

    (能问到这的面试官都比较注重深度,这些常规操作要记牢) (原型链的细节可以参考我的另一篇专栏) JavaScript原型链的一夜情 4.nextTick知道吗,实现原理是什么?...(关于宏任务和微任务以及事件循环可以参考我的另两篇专栏) (看到这你就会发现,其实问框架最终还是考验你的原生JavaScript功底) 如何解释Event Loop面试官才满意?...created在实例创建完成后发生,当前阶段已经完成了数据观测,也就是可以使用数据,更改数据,在这里更改数据不会触发updated函数。...在此时也可以对数据进行更改,不会触发updated。 mounted在挂载完成后发生,在当前阶段,真实的Dom挂载完毕,数据完成双向绑定,可以访问到Dom节点,使用$refs属性对Dom进行操作。...beforeUpdate发生在更新之前,也就是响应式数据发生更新,虚拟dom重新渲染之前被触发,你可以在当前阶段进行更改数据,不会造成重渲染。

    1.2K20

    分享近百道JavaScript 基础面试题,帮助你巩固JavaScript 基础知识

    解释 JavaScript 中的事件委托。 事件委托是一种技术,其中父元素处理由其子元素触发的事件。它有助于优化性能并减少事件侦听器。 9. JavaScript 中的闭包是什么?...事件冒泡是在嵌套元素上触发的事件通过其在 DOM 层次结构中的父元素传播的过程。 18. JavaScript 中 setTimeout() 函数的作用是什么?...32.解释JavaScript中事件委托的概念。 事件委托是一种将单个事件侦听器附加到父元素以处理由其子元素触发的事件的技术。它有助于优化性能并减少内存消耗。 33....闭包是可以从其外部词法环境访问变量的函数,即使在外部函数完成执行之后也是如此。 60. 如何从 JavaScript 中的数组中删除重复项?...75.解释JavaScript中事件冒泡和事件捕获的概念。 事件冒泡是默认行为,其中在子元素上触发的事件通过其父元素向上传播。事件捕获则相反,在父级捕获事件,然后向下传播到目标元素。 76.

    34610

    用于Web爬虫解决方案的无服务器体系结构

    CloudWatch允许您创建触发器(例如,将代码更新提交到代码存储库时启动作业)或计划的事件(例如,每小时执行一次脚本)。我们希望后者:根据计划执行作业。...触发后,AWS Batch将从Amazon ECR获取预构建的Docker映像,并在预定义的环境中执行它。AWS Batch是一项免费服务,可让您配置任务执行所需的环境和资源。...在本地更新脚本文件并将更改提交到AWS CodeCommit上的代码存储库之后,将触发CloudWatch事件,并且AWS CodeBuild将构建新的Docker映像并将其提交到Amazon ECR。...此外,您可以 构建自己的程序包 以支持功能的执行,也可以使用 Lambda Layers 来访问外部库,甚至是基于Linux的外部程序。...总而言之,AWS CDK允许您将基础架构作为代码,并且所有更改都将存储在代码存储库中。

    2.6K20

    Open Measurement -Android SDK

    如果您确实是在服务器端注入JS库(即在广告响应本身中),则可以跳过此步骤。...另请注意,在集成本机OM SDK时,必须使用相同或更高版本的OM SDK JavaScript-理想情况下,可以部署IAB Tech Lab的最新JavaScript补丁版本 3.确定您的集成。...对于广告SDK,此名称应与SDK的语义版本相同。对于应用发布者,此版本应与您的应用版本相同。...通常,对于WebView视频,JavaScript层将同时发出印象和视频事件的信号。 与WebView显示一样,您应确保仅在收到WebView加载事件后才进行会话建立和创建。...调度已加载的事件,以表明广告已加载并可以播放。最好的做法是仅在会话开始后才触发此事件(以及所有其他事件)。

    3.8K20

    如何在 Google 跟踪代码管理器 (GTM) 中安装 Matomo 跟踪?

    单击左侧菜单中的“标签”。 单击标签部分右上角的“新建”按钮添加新标签。 单击“标签配置”以选择标签。 将弹出一个包含所有可用标签的窗口,在此处单击“在社区模板库中发现更多标签类型”链接。...向下滚动并单击“触发”。 选择“所有页面”以在所有页面上触发 Matomo 跟踪标签。 单击“保存”。 单击“预览”按钮预览您的更改。 检查 Matomo 标签是否按预期触发。...单击“标签配置”并选择“自定义 HTML” 复制标准 Matomo JavaScript 跟踪代码: 使用您的管理员或超级用户帐户登录 Matomo。 单击右上角菜单中的“管理”(齿轮图标)。...将此 JavaScript 跟踪代码粘贴到标签配置 HTML 字段中。 向下滚动并单击“触发”。 选择“所有页面”以在所有页面上触发“Matomo 跟踪标签”。 单击“保存”。...单击“预览”按钮预览您的更改。 检查 Matomo 标签是否按预期触发。 单击“提交”按钮,然后单击右上角的“发布”按钮,发布您的更改。 恭喜!

    43330

    升级到Zabbix6.0的十大理由,Zabbix6.0培训师已就位!

    有几种方法可以定制Zabbix前端: 将Zabbix标志替换为您公司的品牌 隐藏Zabbix支持/集成页面的链接 设置一个自定义帮助页面链接 在前端页脚更改版权声明。...现在可以为特定用户生成一个永久的API令牌、定义一个过期日期并在API调用中使用该令牌,而不需要定期重新发出一个新的API令牌。 Zabbix 5.2版本还增加了在外部数据库中存储敏感信息的功能。...这些改进不仅提高了现有Zabbix实例的性能,而且还为以后版本中即将出现的特性的设计奠定了基础。 以前,基于趋势的触发器函数总是使用数据库查询来获取所需的数据。...问2 :你能详细说明标签比应用集更灵活的地方吗?使用标签还有什么其他好处吗? 答2 :Zabbix已经支持大多数基本Zabbix对象的标签,比如触发器、主机、主机原型和模板。...如果我们有一个带有标签的监控项,这个标签将标记与该监控项相关的任何问题。问题事件将从整个标签链(主机、模板、触发器、项等)继承标签。接下来,我们可以使用操作对特定的标签作出反应。

    1.6K31

    将 SVG 与媒体查询结合使用

    对于徽标和图标来说这很好。但是,如果您要创建图表样式库之类的内容,则最好使用外部 CSS 文件。...如果要更改 SVG 元素的堆叠顺序,则需要在源中移动它们或使用 JavaScript 在 DOM 树中对它们重新排序。 事实上,大多数 CSS 2.1 属性不适用于 SVG 文档。...要使其在其他浏览器中工作,请使用 JavaScript 库,例如GreenSock及其 MorphSVGPlugin。...由于此技术使用onload事件属性或SVGLoad事件,因此将我们的 CSS 和 JavaScript 嵌入到 SVG 文件中是个好主意。...当 CSS 是外部的时,SVGLoad事件可能会在其关联的 CSS 完成加载之前触发。 使用媒体查询 background-size SVG 文档和媒体查询不限于前景图像。

    6.2K00

    50道JavaScript详解面试题,你需要了解一下

    17、在JavaScript中使用事件委托时 例如,当我们必须侦听页面加载期间可能不存在的事件时,可以使用事件委托,并在父元素上提供事件处理程序并查看event.target。...20、创建字符串后,我们可以修改它吗? 不可以,因为字符串在JavaScript中是不可变的,指向字符串的变量可以分配给另一个字符串。 21、承诺链中的嵌套捕获可以捕获在承诺链中向上抛出的错误吗?...它可以防止更改对象的原型。 它防止更改属性的值。 它防止更改属性的可写性。 40、event.target与event.currentTarget有何不同?...44、 queueMicrotask队列中的任务是在后进先出的基础上执行的。真的吗? 否,任务按照先进先出的顺序执行。 45、什么是Shadow DOM API?...它返回h,因为数组在JavaScript中是从零开始的,因此arr [2] [1]将可以访问外部数组的第3个元素和内部数组的第2个元素,从而得出值“ h”。

    3.5K40
    领券