前端面试高频考点精粹30例
精选前端面试题解析
HTML与CSS相关问题
如何实现垂直居中?
使用Flexbox布局是最简单的方法:
.parent {
display: flex;
justify-content: center;
align-items: center;
}
Grid布局同样有效:
.parent {
display: grid;
place-items: center;
}
传统方法结合transform适用于不确定高度的场景:
.child {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}
解释BFC(块级格式化上下文)
BFC是CSS渲染中的独立区域,特性包括避免外边距重叠和清除浮动。触发方式:
float不为noneoverflow不为visibledisplay为inline-block/table-cell等
JavaScript核心概念
事件循环机制
同步任务进入主线程,异步任务分为宏任务(setTimeout)和微任务(Promise)。执行顺序:
- 同步代码
- 清空微任务队列
- 执行一个宏任务
- 重复步骤2-3
实现深拷贝
function deepClone(obj) {
if (typeof obj !== 'object' || obj === null) return obj;
const result = Array.isArray(obj) ? [] : {};
for (let key in obj) {
result[key] = deepClone(obj[key]);
}
return result;
}
注意:此方法不处理循环引用,生产环境建议使用structuredClone或第三方库。
框架相关问题
React Hooks使用限制
- 只能在函数组件或自定义Hook中调用
- 必须放在顶层作用域,不可嵌套在条件/循环中
原理:Hooks依赖调用顺序标识,条件语句会破坏顺序一致性。
Vue响应式原理
通过Object.defineProperty(Vue 2)或Proxy(Vue 3)实现数据劫持。依赖收集过程:
- 组件渲染时触发
getter,将观察者存入订阅器 - 数据变化时触发
setter,通知所有订阅者更新
性能优化实践
减少重绘与回流
- 使用
transform代替top/left动画 - 批量DOM操作通过
documentFragment实现 - 避免频繁读取
offsetHeight等布局属性
代码分割策略
动态导入语法:
const LazyComponent = React.lazy(() => import('./Component'));
Webpack配置:
optimization: {
splitChunks: {
chunks: 'all'
}
}
网络与安全
HTTPS握手过程
- 客户端发送加密协议版本和随机数
- 服务器返回证书、公钥和随机数
- 客户端验证证书后生成预主密钥
- 双方通过随机数推导会话密钥
防御XSS攻击
- 输入内容使用
textContent而非innerHTML - 服务端转义特殊字符(如
<变为<) - CSP策略限制脚本来源:
Content-Security-Policy: default-src 'self'
工程化与工具
Webpack打包优化
- 配置
externals排除大型库(如jQuery) - 使用
DllPlugin预编译不变模块 - 开启
Tree Shaking删除未引用代码
Git协作流程
推荐Git Flow工作流:
feature分支开发新功能release分支预发布测试hotfix分支紧急修复生产问题
通过系统化梳理高频考点,候选人可针对性提升知识短板。建议结合项目经验准备STAR法则(情境-任务-行动-结果)的案例回答,展现实际问题解决能力。
BbS.okane479.info/PoSt/1121_663190.HtM
BbS.okane480.info/PoSt/1121_202964.HtM
BbS.okane481.info/PoSt/1121_295092.HtM
BbS.okane482.info/PoSt/1121_806348.HtM
BbS.okane483.info/PoSt/1121_300646.HtM
BbS.okane484.info/PoSt/1121_788473.HtM
BbS.okane485.info/PoSt/1121_232925.HtM
BbS.okane486.info/PoSt/1121_373692.HtM
BbS.okane487.info/PoSt/1121_900111.HtM
BbS.okane488.info/PoSt/1121_814927.HtM
BbS.okane479.info/PoSt/1121_417603.HtM
BbS.okane480.info/PoSt/1121_271334.HtM
BbS.okane481.info/PoSt/1121_851447.HtM
BbS.okane482.info/PoSt/1121_216600.HtM
BbS.okane483.info/PoSt/1121_595766.HtM
BbS.okane484.info/PoSt/1121_367720.HtM
BbS.okane485.info/PoSt/1121_320900.HtM
BbS.okane486.info/PoSt/1121_640339.HtM
BbS.okane487.info/PoSt/1121_153740.HtM
BbS.okane488.info/PoSt/1121_253020.HtM
BbS.okane479.info/PoSt/1121_618313.HtM
BbS.okane480.info/PoSt/1121_019691.HtM
BbS.okane481.info/PoSt/1121_831888.HtM
BbS.okane482.info/PoSt/1121_400323.HtM
BbS.okane483.info/PoSt/1121_475429.HtM
BbS.okane484.info/PoSt/1121_576777.HtM
BbS.okane485.info/PoSt/1121_440184.HtM
BbS.okane486.info/PoSt/1121_872372.HtM
BbS.okane487.info/PoSt/1121_480465.HtM
BbS.okane488.info/PoSt/1121_319741.HtM
BbS.okane479.info/PoSt/1121_907663.HtM
BbS.okane480.info/PoSt/1121_202114.HtM
BbS.okane481.info/PoSt/1121_082929.HtM
BbS.okane482.info/PoSt/1121_954861.HtM
BbS.okane483.info/PoSt/1121_925858.HtM
BbS.okane484.info/PoSt/1121_366537.HtM
BbS.okane485.info/PoSt/1121_781187.HtM
BbS.okane486.info/PoSt/1121_806341.HtM
BbS.okane487.info/PoSt/1121_429707.HtM
BbS.okane488.info/PoSt/1121_103491.HtM
BbS.okane479.info/PoSt/1121_417555.HtM
BbS.okane480.info/PoSt/1121_981981.HtM
BbS.okane481.info/PoSt/1121_895381.HtM
BbS.okane482.info/PoSt/1121_758792.HtM
BbS.okane483.info/PoSt/1121_677693.HtM
BbS.okane484.info/PoSt/1121_590919.HtM
BbS.okane485.info/PoSt/1121_444708.HtM
BbS.okane486.info/PoSt/1121_590245.HtM
BbS.okane487.info/PoSt/1121_855623.HtM
BbS.okane488.info/PoSt/1121_098812.HtM
BbS.okane479.info/PoSt/1121_042980.HtM
BbS.okane480.info/PoSt/1121_704935.HtM
BbS.okane481.info/PoSt/1121_544600.HtM
BbS.okane482.info/PoSt/1121_649704.HtM
BbS.okane483.info/PoSt/1121_993898.HtM
BbS.okane484.info/PoSt/1121_410069.HtM
BbS.okane485.info/PoSt/1121_288181.HtM
BbS.okane486.info/PoSt/1121_091030.HtM
BbS.okane487.info/PoSt/1121_128896.HtM
BbS.okane488.info/PoSt/1121_332492.HtM
BbS.okane479.info/PoSt/1121_614555.HtM
BbS.okane480.info/PoSt/1121_068889.HtM
BbS.okane481.info/PoSt/1121_774567.HtM
BbS.okane482.info/PoSt/1121_025344.HtM
BbS.okane483.info/PoSt/1121_717576.HtM
BbS.okane484.info/PoSt/1121_431869.HtM
BbS.okane485.info/PoSt/1121_267818.HtM
BbS.okane486.info/PoSt/1121_808274.HtM
BbS.okane487.info/PoSt/1121_888182.HtM
BbS.okane488.info/PoSt/1121_942444.HtM
BbS.okane479.info/PoSt/1121_202844.HtM
BbS.okane480.info/PoSt/1121_353758.HtM
BbS.okane481.info/PoSt/1121_919047.HtM
BbS.okane482.info/PoSt/1121_065405.HtM
BbS.okane483.info/PoSt/1121_382095.HtM
BbS.okane484.info/PoSt/1121_988519.HtM
BbS.okane485.info/PoSt/1121_617463.HtM
BbS.okane486.info/PoSt/1121_523630.HtM
BbS.okane487.info/PoSt/1121_634372.HtM
BbS.okane488.info/PoSt/1121_755234.HtM