首页| JavaScript| HTML/CSS| Matlab| PHP| Python| Java| C/C++/VC++| C#| ASP| 其他|
购买积分 购买会员 激活码充值

您现在的位置是:虫虫源码 > Java > 2021 最新版前端工程师面试题手册

2021 最新版前端工程师面试题手册

  • 资源大小:4.67M
  • 上传时间:2021-09-21
  • 下载次数:0次
  • 浏览次数:0次
  • 资源积分:1积分
  • 标      签: Ajax框架/RIA

资 源 简 介

2021 最新版前端工程师面试题手册 目录 1 | 前端基础........................................................................................................................ 11 1.1 | HTTP/HTML/浏览器................................................................................................ 11  说一下http 和https......................................................................................... 11  tcp 三次握手,一句话概括............................................................................ 12  TCP 和UDP 的区别.........................................................................................12  WebSocket 的实现和应用................................................................................12  HTTP 请求的方式,HEAD 方式.................................................................... 13  一个图片url 访问后直接下载怎样实现?....................................................13  说一下web Quality(无障碍)...................................................................... 14  几个很实用的BOM 属性对象方法?..............................................................14  说一下HTML5 drag api................................................................................... 15  说一下http2.0.................................................................................................. 15  补充400 和401、403 状态码........................................................................ 15  fetch 发送2 次请求的原因............................................................................. 16  Cookie、sessionStorage、localStorage 的区别................................................ 16  说一下web worker............................................................................................17  对HTML 语义化标签的理解..........................................................................17  iframe 是什么?有什么缺点?....................................................................... 17  Doctype 作用?严格模式与混杂模式如何区分?它们有何意义?................17  Cookie 如何防范XSS 攻击..............................................................................18  Cookie 和session 的区别................................................................................. 18  一句话概括RESTFUL.....................................................................................18  讲讲viewport 和移动端布局...........................................................................18  click 在ios 上有300ms 延迟,原因及如何解决?...................................... 18  addEventListener 参数......................................................................................18  cookie sessionStorage localStorage 区别........................................................... 19  cookie session 区别...........................................................................................19  介绍知道的http 返回的状态码......................................................................19  http 常用请求头............................................................................................... 21  强,协商缓存.................................................................................................. 24  讲讲304............................................................................................................25  强缓存、协商缓存什么时候用哪个.............................................................. 25  前端优化...........................................................................................................26  GET 和POST 的区别.......................................................................................26  301 和302 的区别........................................................................................... 27  HTTP 支持的方法............................................................................................27 想要获取更多前端开发相关学习资料,请扫描页脚二维码,添加学习助手领取>>>>>>  如何画一个三角形.......................................................................................... 27  状态码304 和200........................................................................................... 27  说一下浏览器缓存.......................................................................................... 28  HTML5 新增的元素.........................................................................................28  在地址栏里输入一个URL,到这个页面呈现出来,中间会发生什么?....28  cookie 和session 的区别,localstorage 和sessionstorage 的区别................. 29  常见的HTTP 的头部.......................................................................................29  HTTP2.0 的特性..............................................................................................30  cache-control 的值有哪些............................................................................... 30  浏览器在生成页面的时候,会生成那两颗树?..........................................30  csrf 和xss 的网络攻击及防范.........................................................................30  怎么看网站的性能如何.................................................................................. 31  介绍HTTP 协议(特征).....................................................................................31  输入URL 到页面加载显示完成发生了什么?.............................................. 31  说一下对Cookie 和Session 的认知,Cookie 有哪些限制?....................... 31  描述一下XSS 和CRSF 攻击?防御方法?.................................................. 32  知道304 吗,什么时候用304?................................................................... 32  具体有哪些请求头是跟缓存相关的.............................................................. 32  cookie 和session 的区别..................................................................................32  cookie 有哪些字段可以设置........................................................................... 33  cookie 有哪些编码方式?............................................................................... 33  除了cookie,还有什么存储方式。说说cookie 和localStorage 的区别..... 33  浏览器输入网址到页面渲染全过程.............................................................. 34  HTML5 和CSS3 用的多吗?你了解它们的新属性吗?有在项目中用过 吗?...........................................................................................................................34  http 常见的请求方法....................................................................................... 35  get 和post 的区别............................................................................................ 35  说说302,301,304 的状态码...................................................................... 35  web 性能优化................................................................................................... 35  浏览器缓存机制.............................................................................................. 35  post 和get 区别................................................................................................ 36 1.2 | CSS............................................................................................................................ 36  说一下css 盒模型............................................................................................36  画一条0.5px 的线............................................................................................37  link 标签和import 标签的区别.......................................................................37  transition 和animation 的区别.........................................................................38  Flex 布局...........................................................................................................38  BFC(块级格式化上下文,用于清楚浮动,防止margin 重叠等)..........39  垂直居中的方法.............................................................................................. 39  关于JS 动画和css3 动画的差异性................................................................41  说一下块元素和行元素.................................................................................. 41  多行元素的文本省略号.................................................................................. 41  visibility=hidden, opacity=0,display:none......................................................42  双边距重叠问题(外边距折叠).................................................................. 42 想要获取更多前端开发相关学习资料,请扫描页脚二维码,添加学习助手领取>>>>>>  position 属性比较............................................................................................ 42  浮动清除...........................................................................................................43  css3 新特性.......................................................................................................43  CSS 选择器有哪些,优先级呢.......................................................................43  清除浮动的方法,能讲讲吗.......................................................................... 44  怎么样让一个元素消失,讲讲...................................................................... 44  介绍一下盒模型.............................................................................................. 44  position 相关属性............................................................................................. 45  css 动画如何实现.............................................................................................45  如何实现图片在某个容器中居中的?.......................................................... 46  如何实现元素的垂直居中.............................................................................. 46  CSS3 中对溢出的处理.....................................................................................46  float 的元素,display 是什么.......................................................................... 46  隐藏页面中某个元素的方法.......................................................................... 46  三栏布局的实现方式,尽可能多写,浮动布局时,三个div 的生成顺序有 没有影响...................................................................................................................46  什么是BFC...................................................................................................... 47  calc 属性........................................................................................................... 47  有一个width300,height300,怎么实现在屏幕上垂直水平居中.............. 47  display:table 和本身的table 有什么区别.................................................... 48  position 属性的值有哪些及其区别.................................................................48  z-index 的定位方法......................................................................................... 48  如果想要改变一个DOM 元素的字体颜色,不在它本身上进行操作?... 49  对CSS 的新属性有了解过的吗?..................................................................49  用的最多的css 属性是啥?........................................................................... 49  line-height 和height 的区别............................................................................49  设置一个元素的背景颜色,背景颜色会填充哪些区域?..........................49  知道属性选择器和伪类选择器的优先级吗.................................................. 49  inline-block、inline 和block 的区别;为什么img 是inline 还可以设置宽高 49  用css 实现一个硬币旋转的效果................................................................... 50  了解重绘和重排吗,知道怎么去减少重绘和重排吗,让文档脱离文档流有 哪些方法...................................................................................................................51  CSS 画正方体,三角形...................................................................................51  overflow 的原理................................................................................................ 53  清除浮动的方法.............................................................................................. 53  box-sizing 的语法和基本用处........................................................................ 54  使元素消失的方法有哪些?.......................................................................... 54  两个嵌套的div,position 都是absolute,子div 设置top 属性,那么这个top 是相对于父元素的哪个位置定位的。.................................................................. 54  说说盒子模型.................................................................................................. 54  display............................................................................................................... 54  怎么隐藏一个元素.......................................................................................... 55  display:none 和visibilty:hidden 的区别...........................................................55 想要获取更多前端开发相关学习资料,请扫描页脚二维码,添加学习助手领取>>>>>>  相对布局和绝对布局,position:relative 和obsolute。..................................55  flex 布局............................................................................................................55  block、inline、inline-block 的区别。........................................................... 56  css 的常用选择器.............................................................................................56  css 布局.............................................................................................................56  css 定位.............................................................................................................57  relative 定位规则..............................................................................................57  垂直居中...........................................................................................................58  css 预处理器有什么........................................................................................ 58 1.3 | JavaScript.................................................................................................................. 58  get 请求传参长度的误区.................................................................................58  补充get 和post 请求在缓存方面的区别.......................................................58  说一下闭包...................................................................................................... 59  说一下类的创建和继承.................................................................................. 59  如何解决异步回调地狱.................................................................................. 61  说说前端中的事件流...................................................................................... 61  如何让事件先冒泡后捕获.............................................................................. 61  说一下事件委托.............................................................................................. 62  说一下图片的懒加载和预加载...................................................................... 62  mouseover 和mouseenter 的区别.....................................................................62  JS 的new 操作符做了哪些事情..................................................................... 62  改变函数内部this 指针的指向函数(bind,apply,call 的区别)........... 62  JS 的各种位置,比如clientHeight,scrollHeight,offsetHeight ,以及scrollTop, offsetTop,clientTop 的区别?................................................................................... 63  JS 拖拽功能的实现..........................................................................................63  异步加载JS 的方法.........................................................................................63  Ajax 解决浏览器缓存问题..............................................................................64  JS 的节流和防抖..............................................................................................64  JS 中的垃圾回收机制......................................................................................64  eval 是做什么的............................................................................................... 65  如何理解前端模块化...................................................................................... 66  说一下CommonJS、AMD 和CMD................................................................. 66  对象深度克隆的简单实现.............................................................................. 67  实现一个once 函数,传入函数参数只执行一次.........................................67  将原生的ajax 封装成promise........................................................................ 67  JS 监听对象属性的改变..................................................................................68  如何实现一个私有变量,用getName 方法可以访问,不能直接访问......68  ==和===、以及Object.is 的区别................................................................... 69  setTimeout、setInterval 和requestAnimationFrame 之间的区别...................69  实现一个两列等高布局,讲讲思路.............................................................. 70  自己实现一个bind 函数................................................................................. 70  用setTimeout 来实现setInterval..................................................................... 70  JS 怎么控制一次加载一张图片,加载完后再加载下一张......................... 71  代码的执行顺序.............................................................................................. 72 想要获取更多前端开发相关学习资料,请扫描页脚二维码,添加学习助手领取>>>>>>  如何实现sleep 的效果(es5 或者es6)....................................................... 72  简单的实现一个promise.................................................................................73  Function._proto_(getPrototypeOf)是什么?......................................................73  实现JS 中所有对象的深度克隆(包装对象,Date 对象,正则对象)....74  简单实现Node 的Events 模块....................................................................... 76  箭头函数中this 指向举例.............................................................................. 77  JS 判断类型......................................................................................................77  数组常用方法.................................................................................................. 77  数组去重...........................................................................................................78  闭包有什么用................................................................................................. 78  事件代理在捕获阶段的实际应用.................................................................. 78  去除字符串首尾空格...................................................................................... 78  性能优化...........................................................................................................79  来讲讲JS 的闭包吧.........................................................................................79  能来讲讲JS 的语言特性吗.............................................................................79  如何判断一个数组(讲到typeof 差点掉坑里)................................................ 80  你说到typeof,能不能加一个限制条件达到判断条件............................... 80  JS 实现跨域......................................................................................................80  JS 基本数据类型..............................................................................................80  JS 深度拷贝一个元素的具体实现..................................................................80  之前说了ES6set 可以数组去重,是否还有数组去重的方法.....................81  重排和重绘,讲讲看...................................................................................... 81  JS 的全排列......................................................................................................81  跨域的原理...................................................................................................... 82  不同数据类型的值的比较,是怎么转换的,有什么规则..........................82  null == undefined 为什么.................................................................................82  this 的指向哪几种...........................................................................................83  暂停死区...........................................................................................................83  AngularJS 双向绑定原理................................................................................. 83  写一个深度拷贝.............................................................................................. 84  简历中提到了requestAnimationFrame,请问是怎么使用的.......................85  有一个游戏叫做Flappy Bird,就是一只小鸟在飞,前面是无尽的沙漠,上 下不断有钢管生成,你要躲避钢管。然后小明在玩这个游戏时候老是卡顿甚至 崩溃,说出原因(3-5 个)以及解决办法(3-5 个)....................................... 85  编写代码,满足以下条件: (1)Hero("37er");执行结果为Hi! This is 37er ( 2 ) Hero("37er").kill(1).recover(30); 执行结果为Hi! This is 37er Kill 1 bug Recover 30 bloods (3)Hero("37er").sleep(10).kill(2)执行结果为Hi! This is 37er // 等待10s 后Kill 2 bugs //注意为bugs (双斜线后的为提示信息,不需要打印) 85  什么是按需加载.............................................................................................. 86  说一下什么是virtual dom............................................................................... 86  webpack 用来干什么的....................................................................................86  ant-design 优点和缺点.................................................................................... 87  JS 中继承实现的几种方式,..........................................................................87 想要获取更多前端开发相关学习资料,请扫描页脚二维码,添加学习助手领取>>>>>>  写一个函数,第一秒打印1,第二秒打印2................................................87  Vue 的生命周期............................................................................................... 88  简单介绍一下symbol...................................................................................... 88  什么是事件监听.............................................................................................. 89  介绍一下promise,及其底层如何实现.........................................................89  说说C ,Java,JavaScript 这三种语言的区别............................................. 90  JS 原型链,原型链的顶端是什么?Object 的原型是什么?Object 的原型的 原型是什么?在数组原型链上实现删除数组重复数据的方法..........................91  什么是js 的闭包?有什么作用,用闭包写个单例模式............................. 95  promise Generator Async 的使用................................................................... 95  事件委托以及冒泡原理。.............................................................................. 99  写个函数,可以转化下划线命名到驼峰命名..............................................99  深浅拷贝的区别和实现................................................................................ 100  JS 中string 的startwith 和indexof 两种方法的区别................................... 101  JS 字符串转数字的方法................................................................................101  let const var 的区别,什么是块级作用域,如何用ES5 的方法实现块级作 用域(立即执行函数),ES6 呢........................................................................102  ES6 箭头函数的特性.....................................................................................102  setTimeout 和Promise 的执行顺序............................................................... 102  有了解过事件模型吗,DOM0 级和DOM2 级有什么区别,DOM 的分级是 什么.........................................................................................................................103  平时是怎么调试JS 的...................................................................................103  JS 的基本数据类型有哪些,基本数据类型和引用数据类型的区别,NaN 是什么的缩写,JS 的作用域类型,undefined==null 返回的结果是什么,undefined 与null 的区别在哪,写一个函数判断变量类型................................................103  setTimeout(fn,100);100 毫秒是如何权衡的.................................................. 105  JS 的垃圾回收机制........................................................................................105  写一个newBind 函数,完成bind 的功能。............................................... 105  怎么获得对象上的属性:比如说通过Object.key()..............................106  简单讲一讲ES6 的一些新特性....................................................................106  call 和apply 是用来做什么?.......................................................................106  了解事件代理吗,这样做有什么好处........................................................ 107  如何写一个继承?........................................................................................ 107  给出以下代码, 输出的结果是什么? 原因? for(var i=0;i<5;i ) { setTimeout(function(){ console.log(i); },1000); } console.log(i).............................. 108  给两个构造函数A 和B,如何实现A 继承B?........................................108  问能不能正常打印索引................................................................................ 109  如果已经有三个promise,A、B 和C,想串行执行,该怎么写?.........109  知道private 和public 吗............................................................................... 109  基础的js.........................................................................................................109  async 和await 具体该怎么用?.................................................................... 110  知道哪些ES6,ES7 的语法......................................................................... 110  promise 和await/async 的关系.......................................................................110  JS 的数据类型................................................................................................110 想要获取更多前端开发相关学习资料,请扫描页脚二维码,添加学习助手领取>>>>>>  JS 加载过程阻塞,解决方法。....................................................................110  JS 对象类型,基本对象类型以及引用对象类型的区别........................... 110  JavaScript 中的轮播实现原理?假如一个页面上有两个轮播,你会怎么实 现?.........................................................................................................................111  怎么实现一个计算一年中有多少周?........................................................ 111  面向对象的继承方式.................................................................................... 111  JS 的数据类型................................................................................................112  引用类型常见的对象.................................................................................... 112  es6 的常用...................................................................................................... 113  class.................................................................................................................113  口述数组去重................................................................................................ 113  继承.................................................................................................................113  call 和apply 的区别.......................................................................................114  es6 的常用特性.............................................................................................. 115  箭头函数和function 有什么区别................................................................. 115  new 操作符原理............................................................................................. 115  bind,apply,call.................................................................................................115  bind 和apply 的区别......................................................................................115  数组的去重.................................................................................................... 115  闭包.................................................................................................................116  promise 实现................................................................................................... 116  assign 的深拷贝..............................................................................................117  说promise,没有promise 怎么办................................................................ 118  事件委托.........................................................................................................119  箭头函数和function 的区别......................................................................... 119  arguments........................................................................................................ 119  箭头函数获取arguments............................................................................... 119  Promise............................................................................................................119  事件代理.........................................................................................................120  Eventloop.........................................................................................................120 2 | 前端核心...................................................................................................................... 120 2.1| 服务端编程............................................................................................................ 120  JSONP 的缺点................................................................................................ 120  跨域(jsonp,ajax)..................................................................................... 120  如何实现跨域................................................................................................ 121  dom 是什么,你的理解?.............................................................................121  关于dom 的api 有什么.................................................................................121 2.2 | Ajax......................................................................................................................... 121  ajax 返回的状态............................................................................................. 121  实现一个Ajax................................................................................................ 122  如何实现ajax 请求,假如我有多个请求,我需要让这些ajax 请求按照某 种顺序一次执行,有什么办法呢?如何处理ajax 跨域................................... 122  写出原生Ajax................................................................................................ 124 想要获取更多前端开发相关学习资料,请扫描页脚二维码,添加学习助手领取>>>>>>  如何实现一个ajax 请求?如果我想发出两个有顺序的ajax 需要怎么做? 124  Fetch 和Ajax 比有什么优缺点?.................................................................125  原生JS 的ajax............................................................................................... 125 2.3 | 移动web 开发....................................................................................................... 125  知道PWA 吗.................................................................................................. 125  移动布局方案................................................................................................ 125  Rem, Em..........................................................................................................126  flex 布局及优缺点..........................................................................................127  Rem 布局及其优缺点.................................................................................... 128  百分比布局.................................................................................................... 129  移动端适配1px 的问题.................................................................................130  移动端性能优化相关经验............................................................................ 131  toB 和toC 项目的区别................................................................................132  移动端兼容性................................................................................................ 132  小程序.............................................................................................................133  2X 图3X 图适配........................................................................................... 133  图片在安卓上,有些设备模糊问题............................................................ 134  固定定位布局键盘挡住输入框内容............................................................ 134  click 的300ms 延迟问题和点击穿透问题...................................................134  phone 及ipad 下输入框默认内阴影.............................................................135  防止手机中页面放大和缩小........................................................................ 135  px、em、rem、%、vw、vh、vm 这些单位的区别.....................................135  移动端适配- dpr 浅析...................................................................................136  移动端扩展点击区域.................................................................................... 136  上下拉动滚动条时卡顿、慢........................................................................ 136  长时间按住页面出现闪退............................................................................ 136  ios 和android 下触摸元素时出现半透明灰色遮罩.................................... 136  active 兼容处理即伪类:active 失效....................................................... 137  webkit mask 兼容处理....................................................................................137  transiton 闪屏..................................................................................................138  圆角bug..........................................................................................................138 3 | 前端进阶...................................................................................................................... 138 3.1 | 前端工程化........................................................................................................... 138  Babel 的原理是什么?.................................................................................... 138  如何写一个babel 插件?................................................................................139  你的git 工作流是怎样的?............................................................................ 143  rebase 与merge 的区别?..............................................................................148  git reset、git revert 和git checkout 有什么区别........................................ 149  webpack 和gulp 区别(模块化与流的区别)............................................ 150 3.2 | Vue 框架................................................................................................................ 151  有使用过Vue 吗?说说你对Vue 的理解................................................... 151  说说Vue 的优缺点........................................................................................151 想要获取更多前端开发相关学习资料,请扫描页脚二维码,添加学习助手领取>>>>>>  Vue 和React 有什么不同?使用场景分别是什么?................................. 151  什么是虚拟DOM?.......................................................................................152  请描述下vue 的生命周期是什么?.............................................................152  vue 如何监听键盘事件?..............................................................................155  watch 怎么深度监听对象变化...................................................................... 156  删除数组用delete 和Vue.delete 有什么区别?......................................... 156  watch 和计算属性有什么区别?.................................................................. 156  Vue 双向绑定原理.........................................................................................157  v-model 是什么?有什么用呢?..................................................................157  axios 是什么?怎样使用它?怎么解决跨域的问题?...............................157  在vue 项目中如何引入第三方库(比如jQuery)?有哪些方法可以做到? 157  说说Vue React angularjs jquery 的区别....................................................... 157  Vue3.0 里为什么要用Proxy API 替代defineProperty API?..................158  Vue3.0 编译做了哪些优化?.......................................................................158  Vue3.0 新特性—— Composition API 与React.js 中Hooks 的异同点..159  Vue3.0 是如何变得更快的?(底层,源码)........................................... 161  vue 要做权限管理该怎么做?如果控制到按钮级别的权限怎么做?.....162  vue 在created 和mounted 这两个生命周期中请求数据有什么区别呢?162  说说你对proxy 的理解..................................................................................162 3.3 | React 框架............................................................................................................. 162  angularJs 和React 区别................................................................................. 162  redux 中间件...................................................................................................163  redux 有什么缺点...........................................................................................163  React 组件的划分业务组件技术组件?......................................................163  React 生命周期函数...................................................................................... 163  React 性能优化是哪个周期函数?.............................................................. 164  为什么虚拟dom 会提高性能?......................................................................164  diff 算法?........................................................................................................ 165  React 性能优化方案...................................................................................... 165  简述flux 思想............................................................................................... 165  React 项目用过什么脚手架?Mern? Yeoman?............................................165  你了解React 吗?......................................................................................... 166  React 解决了什么问题?.............................................................................. 166  React 的协议?.............................................................................................. 166  了解shouldComponentUpdate 吗?...............................................................166  React 的工作原理?..................................................................................... 166  使用React 有何优点?............................................................................... 166  展示组件(Presentational component)和容器组件(Container component)之间 有何不同?.............................................................................................................167  类组件(Class component)和函数式组件(Functional component)之间有何不 同?.........................................................................................................................167  (组件的)状态(state)和属性(props)之间有何不同?..................................... 167  应该在React 组件的何处发起Ajax 请求?........................................... 168 想要获取更多前端开发相关学习资料,请扫描页脚二维码,添加学习助手领取>>>>>>  在React 中,refs 的作用是什么?........................................................... 168  何为高阶组件(higher order component)?.....................................................168  使用箭头函数(arrow functions)的优点是什么?..........................................168  为什么建议传递给setState 的参数是一个callback 而不是一个对象? 168  除了在构造函数中绑定this,还有其它方式吗?.................................... 169  怎么阻止组件的渲染?................................................................................ 169  当渲染一个列表时,何为key?设置key 的目的是什么?...................169  何为JSX ?.................................................................................................. 169 3.4 | Angular 框架..........................................................................................................170  Angular 中组件之间通信的方式.................................................................. 170  Angualr 的八大组成部分并简单描述.......................................................... 170  Angular 中常见的生命周期的钩子函数?.................................................... 170  Angular 中路由的工作原理...........................................................................171  解释rjx 在Angular 中的使用场景............................................................... 171

相 关 资 源

VIP VIP
0.213894s