美文网首页让前端飞Web前端之路
2020 前端面试题--这样准备,拿不到offer算我输!

2020 前端面试题--这样准备,拿不到offer算我输!

作者: web前端学习圈 | 来源:发表于2020-06-15 10:21 被阅读0次

    前言

    为了吸引大家点进来,起了一个刚(sao)气的标题。其实我觉得我这个文章挺值得看看的,看看又不长肉呀?。

    我是上周开始投简历,一周结束面试,在家等offer啦。坐标杭州,杭州的公司其实投来投去都是那几家,小厂不想去,大厂进不去[抠鼻ing],加上互联网寒冬,其实找工作确实不好找啊。

    面试其实是实力和运气并存的事情,所以一方面我们要做好知识的准备,另一方面也要抓住时机,该出手就出手,毕竟现在好多公司hc都缩减。

    css

    1、盒模型

    2、flex

    3、css单位

    4、css选择器

    5、bfc 清除浮动

    6、层叠上下文

    7、常见页面布局

    8、响应式布局

    9、css预处理,后处理

    10、css3新特性

    animation和transiton的相关属性

    animate和translate

    11、display哪些取值

    12、相邻的两个inline-block节点为什么会出现间隔,该如何解决

    13、meta viewport 移动端适配

    14、CSS实现宽度自适应100%,宽高16:9的比例的矩形

    15、rem布局的优缺点

    16、画三角形

    17、1像素边框问题

    html

    1、语义化

    2、新标签新特性

    3、input和textarea的区别

    4、用一个div模拟textarea的实现

    5、移动设备忽略将页面中的数字识别为电话号码的方法

    JS

    1、原型/原型链/构造函数/实例/继承

    2、有几种方式可以实现继承

    3、用原型实现继承有什么缺点,怎么解决

    4、arguments

    5、数据类型判断

    6、作用域链、闭包、作用域

    7、Ajax的原生写法

    8、对象深拷贝、浅拷贝

    9、图片懒加载、预加载

    10、实现页面加载进度条

    11、this关键字

    12、函数式编程

    13、手动实现parseInt

    14、为什么会有同源策略

    15、怎么判断两个对象是否相等

    16、事件模型

    事件委托、代理

    如何让事件先冒泡后捕获

    17、window的onload事件和domcontentloaded

    18、for...in迭代和for...of有什么区别

    19、函数柯里化

    20、call apply区别,原生实现bind

    call,apply,bind 三者用法和区别:角度可为参数、绑定规则(显示绑定和强绑定),运行效率、运行情况。

    21、async/await

    22、立即执行函数和使用场景

    23、设计模式(要求说出如何实现,应用,优缺点)/单例模式实现

    24、iframe的缺点有哪些

    25、数组问题

    数组去重

    数组常用方法

    查找数组重复项

    扁平化数组

    按数组中各项和特定值差值排序

    26、BOM属性对象方法

    27、服务端渲染

    28、垃圾回收机制

    29、eventloop

    进程和线程

    任务队列

    30、如何快速让字符串变成已千为精度的数字

    ES6

    1、声明 let、const

    2、解构赋值

    3、声明类与继承:class、extend

    4、Promise的使用与实现

    5、generator(异步编程、yield、next()、await 、async)

    6、箭头函数this指向问题、拓展运算符

    7、map和set有没有用过,如何实现一个数组去重,map数据结构有什么优点?

    8、ES6怎么编译成ES5,css-loader原理,过程

    9、ES6转成ES5的常见例子

    使用es5实现es6的class

    浏览器

    1、输入url到展示页面过程发生了什么?

    2、重绘与回流

    重绘(repaint): 当元素样式的改变不影响布局时,浏览器将使用重绘对元素进行更新,此时由于只需要UI层面的重新像素绘制,因此 损耗较少

    回流(reflow): 当元素的尺寸、结构或触发某些属性时,浏览器会重新渲染页面,称为回流。此时,浏览器需要重新经过计算,计算后还需要重新页面布局,因此是较重的操作。会触发回流的操作:

    * 页面初次渲染

    * 浏览器窗口大小改变

    * 元素尺寸、位置、内容发生改变

    * 元素字体大小变化

    * 添加或者删除可见的 dom 元素

    * 激活 CSS 伪类(例如::hover)

    * 查询某些属性或调用某些方法

    * clientWidth、clientHeight、clientTop、clientLeft

    * offsetWidth、offsetHeight、offsetTop、offsetLeft

    * scrollWidth、scrollHeight、scrollTop、scrollLeft

    * getComputedStyle()

    * getBoundingClientRect()

    * scrollTo()

    回流必定触发重绘,重绘不一定触发回流。重绘的开销较小,回流的代价较高。

    3、防抖与节流

    4、cookies、session、sessionStorage、localStorage

    5、浏览器内核

    服务端与网络

    1、常见状态码

    2、缓存

    200 From cache和200 ok

    400,401,403状态码分别代表什么

    浏览器缓存

    3、cookie, session, token

    4、前端持久化的方式、区别

    5、DNS是怎么解析的

    6、cdn

    7、计算机网络的相关协议

    8、http/https/http2.0

    9、get post区别

    10、ajax、 axios库

    11、tcp三次握手,四次挥手流程

    12、跨域

    13、前端安全XSS、CSRF

    14、websocket

    15、Http请求中的keep-alive有了解吗

    16、网络分层

    17、即时通信,除了Ajax和websocket

    18、模块化,commonJS,es6,cmd,amd

    Vue

    1、vue解决了什么问题

    2、MVVM的理解

    3、如何实现一个自定义组件,不同组件之间如何通信的?

    4、nextTick

    5、生命周期

    6、虚拟dom的原理

    7、双向绑定的原理?数据劫持?

    8、组件通信

    父->子

    子->父

    非父子组件

    9、Proxy 相比于 defineProperty 的优势

    10、watch computed区别

    11、virtual dom 原理实现

    12、vue-router(hash, HTML5 新增的 pushState

    单页应用,如何实现其路由功能---路由原理

    vue-router如何做用户登录权限等

    你在项目中怎么实现路由的嵌套

    13、vuex的理解

    前端性能优化

    页面DOM节点太多,会出现什么问题?如何优化?

    如何做性能监测

    SEO和语义化

    这个没被问过

    微信小程序

    微信小程序和h5差异,如果有开发weex的经验,可能会加上weex

    git

    一些基本命令

    打包工具webpack

    1、打包原理

    2、打包插件

    3、webpack热更新原理

    4、优化构建速度

    算法

    1、排序算法

    2、动态规划,参见背包问题

    3、二叉树

    4、加油站问题(贪心算法)

    5、二分法

    6、二叉树遍历

    7、单链表反转

    8、取1000个数字里面的质数

    9、找出数组中和为给定值的两个元素,如:[1, 2, 3, 4, 5]中找出和为6的两个元素。

    10、线性顺序存储结构和链式存储结构有什么区别?以及优缺点

    移动端

    1、自适应

    2、pwa

    3、移动端手势

    附加题

    1、无限滚动方案

    2、如何处理兼容性问题

    3、你遇到过最难的问题是什么

    4、ES6 class与ES5 function区别及联系

    5、vue怎么监听数组

    6、写过webpack loader吗

    7、微信网页版登录机制思考

    后记

    如果你刷到这里,你的内心os是不是:前端知识点好多啊,我记不住啊!大兄弟,我和你一样,我也记不住,经常学了就忘,没事,继续学就好了。。。

    我也是一边面试一边增加的,所以可能有的知识点分类不合适,请包涵哈。

    之前做这些知识点罗列的时候,也没想发出来,只是单纯的做点笔记。这些知识点有的来自于其他前端小伙伴写的面经,有的是我自己去面试的时候被问到的。刚准备面试的时候,内心慌的不行啊!但是后来发现,"多面面就好了"这句话简直太正确了,越面越顺,而且自己心情也会比较放松了。 为什么扯这么多呢,其实就想告诉正在找工作的同学们,坚持✊

    相关文章

      网友评论

        本文标题:2020 前端面试题--这样准备,拿不到offer算我输!

        本文链接:https://www.haomeiwen.com/subject/pflcxktx.html