webstorm激活码|持续更新
微信扫码关注公众号,回复“111”
即可获取最新webstorm激活码
回复“永久”,获取永久激活方案

2021前端面试题库|附答案|持续更新
html和css
- 如何理解CSS盒子模型
- BFC
- 标签语义化?
- css与javascript引入设置
- 如何理解CSS盒子模型
- HTML的块级元素,行内元素,行内块元素有哪些,区别是什么
- CSS3有哪些新特性
- 实现元素隐藏
- 如何实现元素水平居中
- 如何实现元素垂直居中
- Position
- 定位元素水平垂直居中
- 清除浮动
- css选择器有哪些,选择器的优先级
- 各种布局优缺点

微信扫码,关注公众号
回复“答案”,即可查看答案
javascript部分
- 什么是闭包
- 闭包的用途
- 闭包的缺点
- 闭包应用场景
- JS 有哪些数据类型?
- 基本数据类型和引用数据类型有什么区别?
- 判断数据类型的方法有哪些?
- 与深拷贝有何区别?如何实现?
- let、const的区别是什么?
- 什么是执行上下文和执行栈?
- 作用域和执行上下文的区别是什么?
- this指向的各种情况都有什么?
- 如何改变this指针的指向?
- 如何理解同步和异步?
- JS是如何实现异步的?
- 什么是AJAX?如何实现?
- 实现异步的方式有哪些?
- 怎么理解Promise对象?
- 怎么理解宏任务,微任务???
- 实现继承的方法有哪些???
- require/import之间的区别?

微信扫码,关注公众号
回复“答案”,即可查看答案
BOM和DOM
- BOM事件?
- 常见BOM事件?
- BOM事件处理程序?
- BOM对象方法?
- BOM对象
- DOM?
- DOM节点
- DOM获取节点
- DOM创建节点与插入节点

微信扫码,关注公众号
回复“答案”,即可查看答案
跨域
- 什么是跨域
- 同源策略
- 为什么有同源策略
- 跨域的解决方案
- jsonp原理

微信扫码,关注公众号
回复“答案”,即可查看答案
HTTP部分
- 什么是域名发散和域名收敛?
- 为什么浏览器要做并发限制呢?
- 什么是 DDOS 攻击
- DDOS 攻击方式
- 如何应对 DDOS 攻击
- http请求过程
- DNS 域名如何解析的?
- TCP三次握手
- 为什么要三次握手?
- 为什么HTTP协议要基于TCP来实现?
- 什么是面相连接协议?面向无链接协议又是什么?
- 说到三次握手,那在说下四次挥手吧?
- 为什么要四次挥手
- 为什么建立连接是三次握手,关闭连接确是四次挥手呢?
- 如果已经建立了连接,但是客户端突然出现故障了怎么办?
- http请求方式有哪些?
- 常用的请求状态码?
- TCP和UDP的区别以及应用场景

微信扫码,关注公众号
回复“答案”,即可查看答案
HTTPS部分
- https的访问过程
- https的优缺点?
- https如何进行性能优化?
- http和https

微信扫码,关注公众号
回复“答案”,即可查看答案
HTTP2 && HTTP缓存
- http/2项目设定目标
- http/2特性
- 什么是缓存?又有什么用?
- 你知道有哪些缓存方式吗?
- 缓存位置
- http缓存怎样生效的?

微信扫码,关注公众号
回复“答案”,即可查看答案
WEBPACK
- webpack与grunt、gulp的不同?
- 与webpack类似的工具还有哪些?谈谈你为什么最终选择(或放弃)使用webpack?
- 有哪些常见的Loader?他们是解决什么问题的?
- 有哪些常见的Plugin?他们是解决什么问题的?
- Loader和Plugin的不同?
- webpack的构建流程是什么?从读取配置到输出文件这个过程尽量说全
- 是否写过Loader和Plugin?描述一下编写loader或plugin的思路?
- webpack的热更新是如何做到的?说明其原理?
- 如何利用webpack来优化前端性能?(提高性能和体验)
- 如何提高webpack的构建速度?
- 怎么配置单页应用?怎么配置多页应用?
- npm打包时需要注意哪些?如何利用webpack来更好的构建?
- 如何在vue项目中实现按需加载?

微信扫码,关注公众号
回复“答案”,即可查看答案
Git
- 列举工作中常用的几个git命令?
- 提交时发生冲突,你能解释冲突是如何产生的吗?你是如何解决的?
- 如果本次提交误操作,如何撤销?
- 如果我想修改提交的历史信息,应该用什么命令?
- 你使用过git stash命令吗?你一般什么情况下会使用它?
- 如何查看分支提交的历史记录?查看某个文件的历史记录呢?
- 能不能说一下git fetch和git pull命令之间的区别?
- 使用过git merge和git rebase吗?它们之间有什么区别?
- 能说一下git系统中HEAD、工作树和索引之间的区别吗?
- 之前项目中是使用的GitFlow工作流程吗?它有什么好处?
- 使用过git cherry-pick,有什么作用?
- git跟其他版本控制器有啥区别?
- 我们在本地工程常会修改一些配置文件,这些文件不需要被提交,而我们又不想每次执行git status时都让这些文件显示出来,我们该如何操作?
- 如何把本地仓库的内容推向一个空的远程仓库?

微信扫码,关注公众号
回复“答案”,即可查看答案
计算机基础
- CPU基础
- CPU与主存
- 程序等同数据
- 指令系统
- 指令寄存器与程序计数器
- 指令如何执行
- 控制器
- 直接存储器存取

微信扫码,关注公众号
回复“答案”,即可查看答案
数据结构与算法
- 什么是复杂度分析 ?
- 为什么要进行复杂度分析 ?
- 如何进行复杂度分析 ?
- 常用的时间复杂度分析
- 时间复杂度分类
- 时间复杂度消耗时间排序
- 空间复杂度分析
- 如何掌握好复杂度分析方法 ?

微信扫码,关注公众号
回复“答案”,即可查看答案
性能优化
- 性能优化的几个方面?
- 如何进行首屏优化
- 什么情况会造成内存泄漏?
- 异步加载?
- 加载方式区别?
- 浏览器缓存?
- 预加载?
- 预渲染?
- CDN?
- DNS 预解析?
- 节流?
- 防抖?
- 懒执行?
- 图片优化?
- 图片加载优化?
- js css 顺序对前端优化影响?
- 重排重绘为什么会影响渲染,如何避免?
- webstorm激活码
- webstorm激活
- webstorm注册码
- webstorm破解

微信扫码,关注公众号
回复“答案”,即可查看答案