3.25模拟面试

一年经验前端面试(60 分钟)

面试时间约 60 分钟,涵盖基础知识(HTML、CSS、JavaScript)、Vue 3、工程化、项目经验等内容。


第一部分:自我介绍(5 分钟)

面试官问题:

  1. 请你简单介绍一下自己?(项目经历、技术栈、擅长的方向)

  2. 你最近在学习什么?为什么选择这个方向?

  3. 你在过去的项目中遇到过哪些挑战?你是如何解决的?


第二部分:HTML & CSS(10 分钟)

概念 & 理论(5 分钟)

  1. HTML5 有哪些新特性?

  2. 什么是 BFC(块级格式化上下文)?它的作用是什么?

  3. position: relative、absolute 和 fixed 的区别?

  4. 如何实现一个两栏/三栏布局?有几种方式?

手写代码(5 分钟)

实现一个圣杯布局(使用 Flex 或 float)
Left
Main
Right

(要求手写 CSS 并讲解原理)


第三部分:JavaScript & TypeScript(15 分钟)

概念 & 理论(8 分钟)

  1. var、let 和 const 的区别?

  2. 介绍一下 JavaScript 的执行机制?(事件循环、微任务 & 宏任务)

  3. call、apply、bind 的区别?

  4. Promise.all、Promise.race、Promise.allSettled 的区别?

手写代码(7 分钟)

  1. 手写一个防抖(debounce)函数

  2. 实现 Promise.all

示例代码:手写 debounce

function debounce(fn, delay) {

let timer;

return function (...args) {

if (timer) clearTimeout(timer);

timer = setTimeout(() => {

fn.apply(this, args);

}, delay);

};

}


第四部分:Vue 3(15 分钟)

概念 & 理论(8 分钟)

  1. Vue 2 和 Vue 3 的核心区别?

  2. ref 和 reactive 的区别?

  3. setup() 的执行时机是什么?

  4. watchEffect 和 watch 的区别?

手写代码(7 分钟)

手写一个 Vue 3 自定义指令(实现 v-focus)


第五部分:项目经验 & 工程化(10 分钟)

  1. 你在 Vue 项目中做过哪些性能优化?

  2. 你在项目中如何管理组件通信?(props、emit、mitt、provide/inject)

  3. 如何优化 Vue 3 的首屏加载速度?(按需加载、懒加载、SSR)

  4. 你在微前端(qiankun)项目中遇到过哪些问题?如何解决?


第六部分:开放性问题(5 分钟)

  1. 你如何提升自己的技术?平时如何学习?

  2. 你更倾向于前端的哪个方向?(工程化、性能优化、组件开发等)

  3. 你希望未来 1-2 年的职业发展是怎样的?


总结 & 建议

手写代码要熟练(防抖、节流、深拷贝、Promise)

Vue 3 重点掌握(组合式 API、生命周期、watchEffect)

项目经验要能深入讲解(优化点、遇到的坑、解决方案)

这样准备下来,一年经验的前端面试会更加稳妥!如果你想加强某个方向,可以告诉我,我可以再出一些针对性的题目!

相关推荐
Lee川4 小时前
优雅进化的JavaScript:从ES6+新特性看现代前端开发范式
javascript·面试
Lee川7 小时前
从异步迷雾到优雅流程:JavaScript异步编程与内存管理的现代化之旅
javascript·面试
晴殇i9 小时前
揭秘JavaScript中那些“不冒泡”的DOM事件
前端·javascript·面试
绝无仅有10 小时前
Redis过期删除与内存淘汰策略详解
后端·面试·架构
绝无仅有10 小时前
Redis大Key问题排查与解决方案全解析
后端·面试·架构
AAA梅狸猫11 小时前
Looper.loop() 循环机制
面试
AAA梅狸猫11 小时前
Handler基本概念
面试
Wect11 小时前
浏览器缓存机制
前端·面试·浏览器
掘金安东尼12 小时前
Fun with TypeScript Generics:玩转 TS 泛型
前端·javascript·面试
掘金安东尼12 小时前
Next.js 企业级落地
前端·javascript·面试