2021内卷年前端最新面试题

242 阅读3分钟

一 js

1 promise实现原理,能否手写一个promise

2 手写call。apply,bind的实现

3 如何实现 add(1)(2)(3)=6

4 说一说原型和原型链?

Function.proto==Function.protype ??true | false

Function.prototype.__proto==??

Object..proto==???

5 常见的设计模式有哪些?观察者模式和发布订阅模式有什么区别呢?能否手写一个简单的观察者模式和发布订阅模式?

6 async 和await是如何实现异步“同步化的”?实现的原理是什么?

7 说一说常见的缓存策略? http的强缓存和协商缓存如何实现??

8 说一说箭头函数和普通函数的区别?

9 说一说js事件循环和node的事件循环的区别?

二 vue

1 说一说vue的双向绑定原理?

2 说一说vue的模板编译原理?

3 谈谈你对nextTick的理解?为什么它能在created钩子函数里实现对dom的操作?

4 v-if和v-show的区别?源码里是如何实现的?

5 能否说一说mvc和mvvm模式的区别?mvvm模式的优势在哪里?

6 有写过vue 的插件吗?它源码里如何实现的?描述一个vue插件的基本实现思路

7 vue的自定义指令里有哪些参数,分别代表什么意思?

8 vue-router的路由守卫有哪几种形式?

9 vue中v-model指令的实现原理是什么?

10 vuex的实现原理是什么?为什么它能实现数据全局访问?而且数据是响应式的?

三 react

1 如何理解react的setState,你认为它是异步还是同步?或者是其他

2 react16、和17有哪些区别?

3 了解react的合成事件吗?为什么react这样设计?

4 请说一说redux的异步工作流?

5 一个管理后台的基本路由配置是怎么样的?能大概说一些吗?

6 react和vue有什么区别?

7 react的生命周期有哪些,分别对应哪些钩子函数?

8 react-hooks解决了哪些问题?为什么要设计hooks

9 了解firbe吗?react实现firbe是为了解决什么问题?firbe是怎么实现的?

10 react项目中如何实现性能优化?

四 webpack

1 请说一说webpack的工作流程?

2 简述一个webpack.config.js的基本配置

3 如何通过webpack进行生产,开发和测试环境的区分

4 webpack的loader和plugin有啥区别?

5 写过webpack的plugin吗?简述一下基本实现

6 css-loader的实现原理是什么?webpack是如何让css被识别的?

7 通过webpack工作中进行了哪些性能优化?

8 自己搭建过脚手架吗?能否说一说基本实现?(核心点)

五 网络相关

1 请说一说http和https的区别?为什么https会更安全?

2 http1.1和http2 的区别是什么?

3 简述一下用户在浏览器输入网址到回车这中间发生了什么?

4 说一说前端安全 csrf和xss攻击分别是什么场景?如何防范?

六 数据结构和算法

1 二叉树的数据结构有什么特点?

2 哈希表有什么特点?

3 归并排序用大o表示法是什么?

4 能否手写一个快速排序?