前端面试精华:闭包、跨域、垂直居中与性能优化
需积分: 5 61 浏览量
更新于2024-08-05
收藏 57KB MD 举报
前端面试是开发者求职过程中的关键环节,考察了应聘者的理论知识和技术实践能力。以下是面试中可能涉及的一些核心知识点:
1. **闭包**:闭包是指有权访问另一个函数内部变量的函数。它允许在函数内部创建私有变量和方法,这些变量不会被垃圾回收机制清除,从而实现数据的持久化。应用场景包括函数防抖和函数节流,前者用于延迟执行多次调用,后者限制连续执行的频率,以提高性能。
2. **跨域问题**:浏览器的同源策略导致不同源间的通信受限,即协议、端口或域名不同视为跨域。解决方法包括使用JSONP(仅限GET请求),利用script标签的跨域特性配合回调函数,CORS(跨源资源共享,需后端支持),以及在Vue项目中通过配置`vue.config.js`的`devServer.proxy`代理功能。
3. **垂直居中**:常见的垂直居中方法有弹性布局(`align-items: center`)、设置`line-height`与`height`相等、使用绝对定位配合百分比偏移和`margin`,或者`transform: translate(-50%, -50%)`使元素置于其父元素中心。
4. **清除浮动**:主要有三种方式:在浮动元素下方添加`<br clear="both">`,使用伪元素`::after`清除浮动,或者父元素设置`overflow: hidden`和`zoom: 1`来隐式清除浮动。
5. **性能优化**:面试者可能会被问到如何提升应用性能,包括减少HTTP请求(如合并文件、使用预加载、懒加载图片和数据),利用CDN加速外部资源加载,逻辑与组件复用,以及使用防抖和节流技术处理频繁操作。
6. **Vue中的数据传递**:Vue提供了多种数据交互方式,包括父子组件间的`props`和`$emit`,非父子组件间的事件中心(eventBus,适合小型项目,也可用Vuex管理状态)。
7. **数组常用方法**:面试者应该熟悉如`filter()`、`map()`、`sort()`、`slice()`等基础操作,以及更高级的`push()`, `shift()`, `unshift()`, `pop()`, `indexOf()`, `concat()`, 和`join()`等方法。
8. **HTML5新特性**:面试者需要了解现代HTML5的语义化标签(如<nav>、<header>、<footer>、<article>、<aside>和<section>等),这些标签有助于提升网页结构的可读性和SEO优化。
这些知识点是前端面试中不可或缺的一部分,掌握它们能帮助求职者展示出扎实的技术功底和实践经验。
2023-12-21 上传
2023-08-24 上传
2023-09-07 上传
2023-11-03 上传
2024-05-07 上传
2023-09-09 上传
2023-06-11 上传
![](https://profile-avatar.csdnimg.cn/default.jpg!1)
「Thoth」
- 粉丝: 0
- 资源: 1
最新资源
- 解决Eclipse配置与导入Java工程常见问题
- 真空发生器:工作原理与抽吸性能分析
- 爱立信RBS6201开站流程详解
- 电脑开机声音解析:故障诊断指南
- JAVA实现贪吃蛇游戏
- 模糊神经网络实现与自学习能力探索
- PID型模糊神经网络控制器设计与学习算法
- 模糊神经网络在自适应PID控制器中的应用
- C++实现的学生成绩管理系统设计
- 802.1D STP 实现与优化:二层交换机中的生成树协议
- 解决Windows无法完成SD卡格式化的九种方法
- 软件测试方法:Beta与Alpha测试详解
- 软件测试周期详解:从需求分析到维护测试
- CMMI模型详解:软件企业能力提升的关键
- 移动Web开发框架选择:jQueryMobile、jQTouch、SenchaTouch对比
- Java程序设计试题与复习指南