大前端每日一题,从基础到进阶,从原理到实战,用面试题来倒逼强迫自己每天去学习去查漏补缺 ,系统构建前端完整的知识体系! 注:每天早上9点左右更新题目及前一天的答案,首页文件夹里的文章来源于网络,仅供参考学习使用,若有侵权,烦请联系我删除!
业精于勤,荒于嬉;行成于思,毁于随!学习从来都不是一蹴而就的事情,需要每天的点滴积累与沉淀,从而由量变引发质变!
第287题(2020-08-26):说一下 Https 加密握手的过程 ?
讨论与参考答案:第287题
讨论与参考答案:第274题
讨论与参考答案:第273题
讨论与参考答案:第272题
讨论与参考答案:第271题
讨论与参考答案:第270题
讨论与参考答案:第112题
第190题(2020-04-10):dangerousSetInnerHTMl知道不?和innerHTML的区别?(美团)
讨论与参考答案:第190题
讨论与参考答案:第202题
讨论与参考答案:第24题
讨论与参考答案:第205题
讨论与参考答案:第220题
讨论与参考答案:第1题
讨论与参考答案:第2题
讨论与参考答案:第3题
讨论与参考答案:第4题
第5题(2019-07-26) 已知以下数组: 编写一个程序将数组扁平化去并除其中重复部分数据,最终得到一个升序并且不重复的数组
讨论与参考答案:第5题
讨论与参考答案:第6题
讨论与参考答案:第7题
讨论与参考答案:第10题
讨论与参考答案:第12题
讨论与参考答案:第13题
讨论与参考答案:第14题
讨论与参考答案:第15题
第18题(2019-08-14):实现一个 sleep 函数,比如 sleep(1000) 意味着等待1000毫秒,可从 Promise、Generator、Async/Await 等角度实现
讨论与参考答案:第18题
讨论与参考答案:第20题
讨论与参考答案:第21题
讨论与参考答案:第22题
讨论与参考答案:第23题
讨论与参考答案:第25题
讨论与参考答案:第26题
讨论与参考答案:第29题
讨论与参考答案:第30题
讨论与参考答案:第31题
讨论与参考答案:第32题
讨论与参考答案:第34题
讨论与参考答案:第35题
讨论与参考答案:第36题
讨论与参考答案:第52题
讨论与参考答案:第53题
第54题(2019-10-10):实现一个函数clone,可以对JavaScript中的5种主要的数据类型(包括Number、String、Object、Array、Boolean)进行值复制
讨论与参考答案:第54题
讨论与参考答案:第55题
讨论与参考答案:第56题
讨论与参考答案:第57题
讨论与参考答案:第58题
第59题(2019-10-16):为了保证页面输出安全,我们经常需要对一些特殊的字符进行转义,请写一个函数escapeHtml,将<, >, &, “进行转义
讨论与参考答案:第59题
讨论与参考答案:第74题
讨论与参考答案:第82题
讨论与参考答案:第83题
讨论与参考答案:第84题
第89题(2019-11-25): 使用 ECMAScript(JS)代码实现一个事件类Event,包含下面功能:绑定事件、解绑事件和派发事件
讨论与参考答案:第89题
讨论与参考答案:第93题
讨论与参考答案:第100题
讨论与参考答案:第102题
讨论与参考答案:第106题
讨论与参考答案:第109题
第110题(2019-12-21):聊聊前端模块化方案及import、require、export、module.exports 的区别?
讨论与参考答案:第110题
第111题(2019-12-23):写出一个数组展开函数, 如输入:[1,[2,[3,4,2],2],5,[6]], 则输出:[1,2,3,4,2,2,5,6]
讨论与参考答案:第111题
讨论与参考答案:第115题
讨论与参考答案:第118题
讨论与参考答案:第120题
讨论与参考答案:第121题
第122题(2020-01-06):项目中是否使用了 TypeScript,TS 中的枚举是怎样写的,如果用原生 JS 怎样实现?(拼多多)
讨论与参考答案:第122题
讨论与参考答案:第130题
第131题(2020-01-17):编程题:Promise 调度相关,JS 实现一个带并发限制的异步调度器 Scheduler,保证同时运行的任务最多有两个(字节跳动)
讨论与参考答案:第131题
讨论与参考答案:第132题
讨论与参考答案:第136题
第137题(2020-01-27):实现一个类,可以on,emit,off,once,注册、调用、取消、注册仅能使用一次的事件?
讨论与参考答案:第137题
讨论与参考答案:第138题
讨论与参考答案:第139题
讨论与参考答案:第140题
讨论与参考答案:第145题
讨论与参考答案:第146题
讨论与参考答案:第148题
讨论与参考答案:第154题
讨论与参考答案:第157题
讨论与参考答案:第158题
讨论与参考答案:第160题
讨论与参考答案:第168题
第170题(2020-03-11):typeof 的原理,与 instanceOf 、 Object.prototype.toString.call() 的区别(字节跳动)
讨论与参考答案:第170题
第172题(2020-03-13):提供一个 VDOM 对象,写一个 render 函数来让他变成一颗 DOM 树(字节跳动)
讨论与参考答案:第172题
讨论与参考答案:第175题
讨论与参考答案:第176题
第180题(2020-03-26):实现一个方法,将传入对象的下划线命名方式全部换为驼峰式(考虑递归的场景)。比如(虾皮)
讨论与参考答案:第180题
讨论与参考答案:第185题
讨论与参考答案:第187题
讨论与参考答案:第188题
第189题(2020-04-09):为啥下面这个代码会爆栈?用setTimeout来递归实现setTimeInterve()就不会爆栈?(美团)
讨论与参考答案:第189题
讨论与参考答案:第191题
第192题(2020-04-14):直接往script标签里放值和<script src="a.js">,有啥区别嘛?(美团)
讨论与参考答案:第192题
讨论与参考答案:第194题
讨论与参考答案:第195题
讨论与参考答案:第197题
讨论与参考答案:第198题
讨论与参考答案:第201题
讨论与参考答案:第205题
讨论与参考答案:第209题
第211题(2020-05-12):原型,class B 继承 class A 翻译成 es5 应该是什么样子?(酷家乐)
讨论与参考答案:第211题
讨论与参考答案:第213题
讨论与参考答案:第214题
讨论与参考答案:第216题
讨论与参考答案:第219题
讨论与参考答案:第221题
讨论与参考答案:第222题
讨论与参考答案:第224题
讨论与参考答案:第225题
讨论与参考答案:第21题
讨论与参考答案:第41题
讨论与参考答案:第61题
讨论与参考答案:第94题
讨论与参考答案:第95题
讨论与参考答案:第98题
第116题(2019-12-28):vue-router 的原理,history 模式和 hash 模式的区别,为什么 history 模式是先进行 app 内模块的切换再去手动更新路由?(微众银行)
讨论与参考答案:第116题
讨论与参考答案:第123题
讨论与参考答案:第124题
讨论与参考答案:第126题
讨论与参考答案:第135题
第182题(2020-03-30): vue computed 属性为什么能够在依赖改变的时候,自己发生变化?(字节跳动)
讨论与参考答案:第182题
第186题(2020-04-03):能不能介绍一下 Vuex 的 Mutation 和 Action 的区别吗?(字节跳动)
讨论与参考答案:第186题
第196题(2020-04-20):对于vue History 路由而言,你觉得在服务端是如何做路由分发的呢?(字节跳动)
讨论与参考答案:第196题
讨论与参考答案:第210题
讨论与参考答案:第218题
讨论与参考答案:第223题
第125题(2020-01-09):React Hooks 解决了什么问题,如何用 Hooks 的方法去模拟 Class Components 的功能(拼多多)
讨论与参考答案:第125题
讨论与参考答案:第134题
讨论与参考答案:第144题
讨论与参考答案:第149题
讨论与参考答案:第156题
讨论与参考答案:第171题
讨论与参考答案:第210题
讨论与参考答案:第65题
讨论与参考答案:第66题
讨论与参考答案:第67题
讨论与参考答案:第68题
讨论与参考答案:第69题
讨论与参考答案:第70题
第71题(2019-10-31):如果使用过koa、egg这两个Node框架,请简述其中的中间件原理,最好用代码表示一下
讨论与参考答案:第71题
讨论与参考答案:第72题
讨论与参考答案:第101题
讨论与参考答案:第108题
讨论与参考答案:第143题
第150题(2020-02-13):koa中response.send、response.rounded、response.json发生了什么事,浏览器为什么能识别到它是一个json结构或是html?
讨论与参考答案:第150题
讨论与参考答案:第151题
讨论与参考答案:第153题
讨论与参考答案:第159题
讨论与参考答案:第167题
讨论与参考答案:第217题
讨论与参考答案:第33题
讨论与参考答案:第42题
讨论与参考答案:第44题
讨论与参考答案:第107题
讨论与参考答案:第114题
第128题(2020-01-14):websocket 和 TCP Socket的区别,websocket 的握手过程,为什么要基于 HTTP 请求来握手?(字节跳动)
讨论与参考答案:第128题
讨论与参考答案:第133题
讨论与参考答案:第142题
讨论与参考答案:第161题
讨论与参考答案:第164题
讨论与参考答案:第183题
讨论与参考答案:第206题
第207题(2020-05-07):http缓存是怎样的?etag和last modify分别什么优点缺点,适合什么场景(描述、举例)
讨论与参考答案:第207题
讨论与参考答案:第19题
讨论与参考答案:第99题
讨论与参考答案:第203题
讨论与参考答案:第215题
讨论与参考答案:第13题
讨论与参考答案:第24题
讨论与参考答案:第40题
讨论与参考答案:第87题
第127题(2020-01-13):假设现在有一个微信公众号文章的页面,可以展示文章、图片、视频和读者留言,从安全和交互性能的角度去讲一下如何优化?(企业微信)
讨论与参考答案:第127题
第129题(2020-01-15):一个监听了 input 事件的输入框,每次触发input都会发送请求,这个输入框的优化方案(微众银行)
讨论与参考答案:第129题
讨论与参考答案:第162题
讨论与参考答案:第163题
讨论与参考答案:第165题
讨论与参考答案:第181题
讨论与参考答案:第204题
讨论与参考答案:第43题
讨论与参考答案:第90题
讨论与参考答案:第91题
讨论与参考答案:第147题
讨论与参考答案:第169题
讨论与参考答案:第184题
讨论与参考答案:第199题
讨论与参考答案:第200题
讨论与参考答案:第208题
讨论与参考答案:第212题
讨论与参考答案:第213题
讨论与参考答案:第214题
讨论与参考答案:第119题
讨论与参考答案:第141题
讨论与参考答案:第152题
第174题(2020-03-17):实现一个算法,来完成字符串相加,比如 "111" + ”2222“ = ”2333“。(高精度算法)
讨论与参考答案:第174题
第179题(2020-03-25):有一个有序递增序列,求有多少个不同的数字。比如 [1, 5, 7, 7, 8, 9, 9]。里面总共有5个不同的数字:1, 5, 7, 8, 9
讨论与参考答案:第179题
讨论与参考答案:第193题
讨论与参考答案:第166题
讨论与参考答案:第103题
讨论与参考答案:第105题
讨论与参考答案:第85题
讨论与参考答案:第88题
讨论与参考答案:第113题
第27题(2019-08-27):怎么限制接口调用次数?(腾讯)
第60题(2019-10-17):Vue 中的 computed 是如何实现的(腾讯)
第62题(2019-10-21):为什么 HTTP1.1 不能实现多路复用(腾讯)
第94题(2019-12-02):vue从data改变到页面渲染的过程?(腾讯)
第95题(2019-12-03):谈谈你对Virtual DOM 的内部工作原理的理解?(腾讯)
第96题(2019-12-04):谈谈Websocket的原理及使用场景?(腾讯)
第97题(2019-12-05):跨平台框架weex和rn及Flutter的原理是什么(腾讯) ?
第98题(2019-12-06):有读过Vuex的源码吗?如果要你自己设计一个状态管理库你会怎么去设计?(腾讯)
第100题(2019-12-10):谈谈你对OAuth2.0 原理流程的理解及运用?(腾讯)
第101题(2019-12-11):组件设计的原则是什么,有开发过npm库发布到npm市场吗?(腾讯)
第102题(2019-12-12):了解过PWA吗?它的离线缓存原理是什么?(腾讯)
第103题(2019-12-13):谈谈你对MVC、MVP、MVVM这三种架构模式的理解及它们的区别?
第104题(2019-12-14):说一下你的优缺点、还能提高的地方及未来职业规划?
第127题(2020-01-13):假设现在有一个微信公众号文章的页面,可以展示文章、图片、视频和读者留言,从安全和交互性能的角度去讲一下如何优化?(企业微信)
第16题(2019-08-12):模拟 localStorage 时如何实现过期时间功能
第63题(2019-10-22):求多个数组之间的交集(算法题)
第121题(2020-01-04):谈谈Service Worker的生命周期、注册时机和作用?(阿里有赞)
第161题(2020-02-27):gzip压缩的原理是什么?
第162题(2020-02-28):CSRF、SSRF和XSS的区别是什么?
第163题(2020-03-02):Cookie中的httponly的属性和作用?
第164题(2020-03-03):HTTP报文结构,请求头有啥,响应头有啥?
第165题(2020-03-04):JWT(JSON Web Token)的原理是什么?
第166题(2020-03-05):数据库的内连接和外连接有什么区别?
第183题(2020-03-31):http缓存控制,协商缓存相关的几个头部的之间的优先级关系?
第184题(2020-04-01):如果让你搭建一套前端监控方案,具体思路?
第188题(2020-04-08):vue-loader 的实现原理是什么?
第194题(2020-04-16):如何删除一个 cookie?(阿里)
第195题(2020-04-17):WeakMap 和 Map 的性能有什么差别?
第201题(2020-04-26):说说async和await的es5实现?(阿里)
第202题(2020-04-27):dom树和cssom树原理是什么?(阿里)
第203题(2020-04-28):响应式背后的浏览器原理你知道吗?(阿里)
第204题(2020-04-29):场景题:保证浏览器不受脚本的恶意攻击?(阿里)
第205题(2020-04-30):假如说你的富文本编辑器内部要显示脚本,该怎么办呢?(阿里)
第210题(2020-05-11):react 与 vue 数组中 key 的作用是什么?(阿里)
第45题(2019-09-23):列举三种禁止浏览器缓存的头字段,并写出响应的设置值
第46题(2019-09-24):精确获取页面元素位置的方式有哪些
第47题(2019-09-25):正则从2018-10-07T11:48:47 Asia/zh-cn 提取出来结果[2018,10,07,11,48,47]
第49题(2019-09-27):【编程题】已知数据结构users,请实现语法支持user.unique能够按照name字段去重,并输出结构为:["a","b"]
第51题(2019-09-30):给出如下虚拟dom的数据结构,如何实现简单的虚拟dom,渲染到目标dom树
第128题(2020-01-14):websocket 和 TCP Socket的区别,websocket 的握手过程,为什么要基于 HTTP 请求来握手?(字节跳动)
第131题(2020-01-17):编程题:Promise 调度相关,JS 实现一个带并发限制的异步调度器 Scheduler,保证同时运行的任务最多有两个(字节跳动)
第132题(2020-01-20):js new一个对象发生了什么?
第135题(2020-01-23):讲讲vue diff的过程?
第136题(2020-01-24):说一下类数组,数据结构是怎么样的,怎么转换为数组?
第137题(2020-01-27):实现一个类,可以on,emit,off,once,注册、调用、取消、注册仅能使用一次的事件?
第138题(2020-01-28):文件上传如何实现?,除了input还有什么别的方法?
第139题(2020-01-29):浏览器如何预览图片,假设我要上传图片,未上传前我想在浏览器看到我待上传的图片?
第140题(2020-01-30):base64 前端如何转化?
第141题(2020-01-31):假设有130个苹果,你我轮流拿,每次可拿1-5个,如何保证你拿到最后一个苹果?
第142题(2020-02-03):fetch为什么会发送2次请求?
第167题(2020-03-06):nodejs从接收到请求到返回给页面经历了什么?
第169题(2020-03-10):webpack treeShaking原理,是靠什么才能实现?(字节跳动)
第170题(2020-03-11):typeof 的原理,与 instanceOf 、 Object.prototype.toString.call() 的区别
第171题(2020-03-12):react 哪些生命周期可以 setState?
第172题(2020-03-13):提供一个 VDOM 对象,写一个 render 函数来让他变成一颗 DOM 树
第173题(2020-03-16):0.1 + 0.2 === 0.3 吗? 为什么?
第174题(2020-03-17):实现一个算法,来完成字符串相加,比如 "111" + ”2222“ = ”2333“。(高精度算法)
第175题(2020-03-19):v8引擎 如何执行 js 代码?
第176题(2020-03-20):AST 以及 AST 有啥应用?
第177题(2020-03-23):DNS 查询的过程,分为哪两种,是怎么一个过程?
第178题(2020-03-24):如果你发现有个网站你突然打不开了,有哪些可能?
第179题(2020-03-25):有一个有序递增序列,求有多少个不同的数字。比如 [1, 5, 7, 7, 8, 9, 9]。里面总共有5个不同的数字:1, 5, 7, 8, 9
第182题(2020-03-30): vue computed 属性为什么能够在依赖改变的时候,自己发生变化?
第185题(2020-04-02):能不能说说 Cookie 有哪些字段?
第186题(2020-04-03):能不能介绍一下 Vuex 的 Mutation 和 Action 的区别吗?
第187题(2020-04-07):进程和线程的区别及进程之间是怎么通信的?
第196题(2020-04-20):对于vue History 路由而言,你觉得在服务端是如何做路由分发的呢?
第208题(2020-05-08):项目中有用到过单元测试、e2e测试吗?它们的区别是什么?
第146题(2020-02-07):介绍一下AST(Abstract Syntax Tree)抽象语法树?
第147题(2020-02-10):使用import时,webpack对node_modules里的依赖会做什么?
第148题(2020-02-11):key主要是解决哪一类的问题,为什么不建议用索引index(重绘)
第149题(2020-02-12):Redux中间件是什么东西,接受几个参数(两端的柯里化函数)
第150题(2020-02-13):koa中response.send、response.rounded、response.json发生了什么事,浏览器为什么能识别到它是一个json结构或是html?
第151题(2020-02-14):koa-bodyparser怎么来解析request?
第155题(2020-02-19):WebView和原生是如何通信的?