# 前端面试每日 **3+1**(每日三问) ## :tada::tada::tada: [2020.5.20, 3+1官网发布上线啦!](http://www.h-camel.com/index.html):tada::tada::tada: [中文](https://github.com/haizlin/fe-interview/blob/master/README.md) | [English](https://github.com/haizlin/fe-interview/blob/master/README-en.md) <p align="left"> <a href="https://github.com/haizlin/fe-interview/issues"><img src="https://img.shields.io/github/languages/top/badges/shields.svg?label=html" alt="html"></a> <a href="https://github.com/haizlin/fe-interview/issues"><img src="https://img.shields.io/github/languages/top/badges/shields.svg?label=css" alt="css"></a> <a href="https://github.com/haizlin/fe-interview/issues"><img src="https://img.shields.io/github/languages/top/badges/shields.svg?label=javascript" alt="javascript"></a> <a href="https://github.com/haizlin/fe-interview/issues"><img src="https://img.shields.io/github/languages/top/badges/shields.svg?label=skill" alt="skill"></a> <a href="https://github.com/haizlin/fe-interview/stargazers"><img src="https://img.shields.io/redmine/plugin/stars/redmine_xlsx_format_issue_exporter.svg" alt="Statr"></a> </p> ## 四大宗旨:勤思考,多动手,善总结,能坚持 > 《论语》,曾子曰:**“吾日三省吾身”**(我每天多次反省自己)。 > 前端面试每日3+1,以面试题来驱动学习,每天进步一点! > 让努力成为一种习惯,让奋斗成为一种享受! > 相信 **坚持** 的力量!!! --- - 学习不打烊,充电加油只为**遇到更好的自己**,365天无节假日,**每天早上5点**纯手工发布面试题(**死磕自己,愉悦大家**)。 - 希望大家在这**浮夸**的前端圈里,保持**冷静**,坚持每天花20分钟来学习与思考。 - 在这千变万化,类库层出不穷的前端,建议大家不要等到找工作时,才狂刷题,提倡**每日学习**!(**不忘初心**,html、css、javascript才是基石!) - 欢迎大家到**Issues**交流,鼓励**PR**,感谢**Star**、感谢**watch**,大家有啥好的建议可以加我微信一起交流讨论! > 希望大家**每日**去学习与思考,这才达到来这里的目的!!!(不要为了谁而来,要为自己而来!) <p align="center"><a href="https://v.youku.com/v_show/id_XNDI2NDUyOTY2MA==.html?spm=a2h3j.8428770.3416059.1">点击查看 “卓越-九周年” 视频</a></p> ## 交流讨论 欢迎大家前来讨论,如果觉得对你的学习有一定的帮助,欢迎点个[**Star**](https://github.com/haizlin/fe-interview), 同时欢迎微信扫码关注 **前端剑解** 公众号,并加入 **“前端学习每日3+1”** 微信群相互交流(点击公众号的菜单:进群交流)。 <p align="center"> <img src="https://github.com/haizlin/fe-interview/raw/master/resource/images/qrcode_public.jpg"> </p> ## 今天的知识点 (2020.05.21) —— 第401天 ([我也要出题](http://www.h-camel.com/contribution.html)) - [html] [DOM节点的种类有哪些?](https://github.com/haizlin/fe-interview/issues/2402) - [css] [如何使用css显示a链接的url?](https://github.com/haizlin/fe-interview/issues/2403) - [js] [使用js实现一个循环队列](https://github.com/haizlin/fe-interview/issues/2404) - [软技能] [有新同事入职,你是要安排他先做新项目还是老项目?为什么?](https://github.com/haizlin/fe-interview/issues/2405) > 点击 [我也要出题](http://www.h-camel.com/contribution.html) 贡献你的题目吧,让大家一起来挑战你的题目! > 欢迎在 [**Issues**](https://github.com/haizlin/fe-interview/issues) 和朋友们一同讨论学习! ## 试题分类 - 分类(3+1) [html](category/html.md) | [css](category/css.md) | [js](category/js.md) | [软技能](category/skill.md) - 专题(欢迎PR) [ECMAScript 34+](category/ECMAScript.md) | [NodeJs](category/nodejs.md) | [jQuery 22+](lib/jQuery.md) | [Vue 248+](lib/Vue.md) | [React 328+](lib/React.md) | [AngularJs](lib/AngularJs.md) | [小程序](lib/wxapp.md) - 工具(敬请期待、欢迎PR) [webpack](tools/webpack.md) - 汇总 [周](category/week.md) ## 历史面试题 - **[查看全部](category/history.md)** - 第1天 (2019.04.17) - [html] [页面导入样式时,使用link和@import有什么区别?](https://github.com/haizlin/fe-interview/issues/1) - [css] [圣杯布局和双飞翼布局的理解和区别,并用代码实现](https://github.com/haizlin/fe-interview/issues/2) - [js] [用递归算法实现,数组长度为5且元素的随机数在2-32间不重复的值](https://github.com/haizlin/fe-interview/issues/3) - 第2天 (2019.04.18) - [html] [html的元素有哪些(包含H5)?](https://github.com/haizlin/fe-interview/issues/4) - [css] [CSS3有哪些新增的特性?](https://github.com/haizlin/fe-interview/issues/5) - [js] [写一个方法去掉字符串中的空格](https://github.com/haizlin/fe-interview/issues/6) - 第3天 (2019.04.19) - [html] [HTML全局属性(global attribute)有哪些(包含H5)?](https://github.com/haizlin/fe-interview/issues/7) - [css] [在页面上隐藏元素的方法有哪些?](https://github.com/haizlin/fe-interview/issues/8) - [js] [去除字符串中最后一个指定的字符](https://github.com/haizlin/fe-interview/issues/9) ………… - 第399天 (2020.05.19) - [html] [android手机能同时播放两个video音频吗?](https://github.com/haizlin/fe-interview/issues/2394) - [css] [使用css写一个垂直翻转图片的效果](https://github.com/haizlin/fe-interview/issues/2395) - [js] [Number()的存储空间是多大?假如接口返回一个超过最大字节的数字怎么办?](https://github.com/haizlin/fe-interview/issues/2396) - [软技能] [你上家公司对于前端部门的验收标准有吗?都规范了哪些标准呢?](https://github.com/haizlin/fe-interview/issues/2397) - 第400天 (2020.05.20) - [html] [DOM节点的根节点是不是body?](https://github.com/haizlin/fe-interview/issues/2398) - [css] [css中的url()要不要加引号?说说你的理解](https://github.com/haizlin/fe-interview/issues/2399) - [js] [一个api接口从请求数据到请求结束共与服务器进行了几次交互?](https://github.com/haizlin/fe-interview/issues/2400) - [软技能] [你有对接过微信支付吗?说说微信支付的流程](https://github.com/haizlin/fe-interview/issues/2401) - **[查看全部](category/history.md)** ## 怎样学习 - 不管题目懂与不懂都要先思考再百度,思考后一定要去写出来 - 如果是原生js的题,不要依赖第三方库,如jquery等 - 每天的题目都是独立的,不需要按顺序来,但建议每道题都去答下,有你会的和有你不会的,答了才知道 - 不懂的题百度后,不要直接复制一大段过来,要用自己的话精简地总结概括出来 ## 起源 > 故事起源于离职同事发来的一道求助面试题,然后在部门企业微信群里炸开了,答题完后大家觉得如果要是每天来一题,是不是会更爽呢?**以面代练**,突发其想说干就干,所以就有了这个开源仓库,只为利他利己! ![起源图](https://github.com/haizlin/fe-interview/raw/master/resource/images/begin.jpg) ## 交流讨论 欢迎大家前来讨论,如果觉得对你的学习有一定的帮助,欢迎点个[**Star**](https://github.com/haizlin/fe-interview), 同时欢迎微信扫码关注 **前端剑解** 公众号,并加入 **“前端学习每日3+1”** 微信群相互交流(点击公众号的菜单:进群交流)。 <p align="center"> <img src="https://github.com/haizlin/fe-interview/raw/master/resource/images/qrcode_public.jpg"> </p> ## 特别感谢(排名不分先后) - [qq674785876](https://github.com/qq674785876) - [undefinedYu](https://github.com/undefinedYu) - [qingleizhang123](https://github.com/qingleizhang123) - [yxkhaha](https://github.com/yxkhaha) - [AnsonZnl](https://github.com/AnsonZnl) - [Luke.Deng](https://github.com/xiangshuo1992) - [xiqi99520](https://github.com/xiqi99520) - [LeannaLady](https://github.com/LeannaLady) - [cxwht](https://github.com/cxwht) - [zhaoqian0901](https://github.com/zhaoqian0901) ## 重大事件 - 2019.04.17 — 来源于一张离职同事发来的求助面试题,然后大家突发其想说干就干 - 2019.04.25 — 添加了面试题的分类 - 2019.04.27 — 添加了Issues的模板 - 2019.04.28 — 每日3题改成每日3+1,即添加了一个软技能题 - 2019.04.29 — 添加了特别感谢的朋友 - 2019.04.30 — 添加了QQ讨论群 - 2019.05.02 — 去除QQ讨论群二维码,添加公众号及个人微信二维码 - 2019.05.05 — 看到很多网络上的朋友滥用链接,让有需要的朋友找不到最新的试题,特添加了转载说明 - 2019.05.07 — 为了把开源项目更好的延续下去,帮助更多爱学习的朋友,开通了掘金专栏、知乎专栏和看云 - 2019.05.07 — 下午star数突破100,看来爱学习的人很多,也为自己的坚持而感到欣慰!利他利已! - 2019.05.08 — 看到点赞数破100了,但每天答题的人很少很少!我在反思问题出在我身上还是什么原因?所以特加了提示:不要为了谁而来,要为自己而来! - 2019.05.12 — 与国际接轨,代码与学习无国界,所以添加了英文版本,后续会继续优化,先解决有的问题! - 2019.05.13 — star数突破300! - 2019.05.14 — issues题目数量突破100!继续努力前行! - 2019.05.15 — 加了技能图标,让README更美观,看着更舒服! - 2019.05.16 — 看到很多朋友直接复制一大段出来文字放到issues里,其实这样是不好的,看后也要用自己的话总结根据出来,所以添加了怎样学习的方法。 - 2019.05.23 — 发现很多朋友都好奇这个开源项目,所以特加了本开源项目的四大宗旨。 - 2019.06.01 — 为了指引新关注的朋友,就把第1、2、3天的题也显示出来了。 - 2019.06.03 — 世上本无竞争,只是参与的人多了而已,特加了相关优质开源项目的链接,欢迎大家关注,找到适合自己的学习方式(open的心态,很多朋友让我多关注下竞争对手,我说不用,要感谢竞争,竞争会使我更强大,其实我觉得最大的对手就是自己!)。 - 2019.06.11 — 添加了贡献指南,欢迎大家提PR。 - 2019.06.13 — star数突破700!离5月13日刚好满一个月,增加了400,看来爱学习的朋友还是很多的!感谢关注! - 2019.06.14 — 同步开通了简书入口,让更多的朋友参与。 - 2019.06.20 — star数突破888!好吉利的数字! - 2019.06.21 — vue的题量突破150+,html/css/javascript/软技能的题量分别为67,成为目前市面上题量最大的开源仓库!(全球第一),感谢坚持! - 2019.06.23 — 仅仅两天,vue的题量再次突破220+,非常感谢坚持! - 2019.06.25 — 误打误撞,github上面搜索“前端面试”,按star排行,成功挺进前10,立个flag,年底目标前5! - 2019.06.26 — 第71天,star数突破1000,issues数突破500! - 2019.06.28 — 第73天,此开源项目被[HelloGitHub 第 39 期](https://hellogithub.com/periodical/volume/39/)收录,并把作者添加到了贡献者的名单,感谢HG,欢迎大家关注HG! - 2019.06.28 — 第73天,star数突破1300,原因是发布了篇 [vue 248+个知识点(面试题)为你保驾护航](https://juejin.im/post/5d153267e51d4510624f9809),看来爱学习的朋友还是非常多的! - 2019.06.30 — 第75天,《前端面试每日3+1》开源项目上了github的热门榜,总榜排行第6,javascript语言榜排名第1!感谢一路同行的朋友们的努力付出! - 2019.06.30 — 第75天,鉴于有不少朋友都想直接要答案,而我的回答始终是没有,答案在你自己脑中!新的口号:始于面试,但不止于面试!提倡每日学习,每天进步! - 2019.07.01 — 第76天,star数突破2000大关,感谢关注的朋友们,如果要参与项目,最好的建议是watch一下 - 2019.07.05 — 第80天,为期一周的热榜结束,收获star数达到2857,在github中“前端面试”的star排名第7,前进了3名,非常感谢[**jsliang**](https://github.com/LiangJunrong/document-library)的推荐才使得有这么一波流量,恢复平静,专心出题,坚持做得更好,期待下一波流量的到来!对了,今天公司9周年,和团队一起专门录制了个九周年的视频![点击查看 “卓越-九周年” 视频](https://v.youku.com/v_show/id_XNDI2NDUyOTY2MA==.html?spm=a2h3j.8428770.3416059.1) - 2019.07.08 — 第83天,star数突破3000大关 - 2019.07.18 — 添加了非常棒的开源项目链接,顺便记录下今天star突破3500,关注的朋友越来越多,继续坚持**死磕自己,愉悦大家** - 2019.07.19 — [328道React题](https://juejin.im/post/5d310e8bf265da1bd261259d)出炉,目前Vue和React的题已经各占领全球第一了,后期会持续更新! - 2019.07.25 — 开通了[segmentfault专栏](https://segmentfault.com/blog/frontend-interview)的专栏,至今已有10个平台同步更新,让更多的朋友参与进来! - 2019.07.25 — 整整100天,从未间断,共968个知识点,3787个朋友关注,上百万次访问!创造了多个记录,多个第一,但路还长,望继续坚持! - 2019.08.02 — 第108天,知识点突破1000,继续努力前行!发现一路上好多模仿者、也有好多抄袭者(引用原题都没有添加出处),但不忘初心,抄得了题目,抄不了**那份坚持与执着**!同时感谢他们一路的陪伴。 - 2019.08.18 — 第124天,受到俄罗斯老外的关注并吐槽了一下,原因估计是他看不懂中文吧,虽然也有英文版本,但那英文及排版有望改进。 - 2019.08.19 — 第125天,本项目又再一次上了github的热门榜,距离上次刚好是50天(在第75天的时候),能帮助到更多的朋友,那就只有坚持吧! - 2019.08.21 — 第127天,star数突破5000,github上搜索“前端面试”,按star排行,成功挺进前5,这是6月25日定的小目标,提前完成,继续坚持吧,不忘初心,利他利己,足矣。 - 2019.09.13 — 今天是更新的第150天,刚好中秋节,农历十五中秋节,是一种巧合,意味着团团圆圆!祝所有朋友幸福健康! - 2019.09.18 — 今天一看关注数增加了不少,才发现又一次上了github热门榜,第三次了,看来爱学习的朋友很多! - 2019.10.10 — 第四次登上github热门榜,应该是坚持更新的结果,同时项目被[前端网](http://qianduan.cc)收录! - 2019.10.20 - 毕竟一个人的能力有限,集体的力量才是无限的!欢迎大家一起来贡献题目,为**前端面试每日3+1**开源社区贡献力量!点击 [我也要出题](http://www.h-camel.com/contribution.html) 贡献你的题目吧,让大家一起来挑战你的题目! - 2019.11.13 — 第211天,第5次登上github热门榜!预计元旦前将会上线3+1的官网,敬请期待! - 2019.12.21 — 第249天,第6次登上github热门榜!最近好多朋友都在问,答案在哪?我的回答还是,没有答案,提倡主动思考! - 2020.02.28 — 第317天,第7次登上github热门榜! - 2020.03.09 — 第328天,第8次登上github热门榜!去年年底说的官网的事还没上线,不找理由,继续期待吧,满一年的时候会实现的 - 2020.03.11 — 第330天,star数突破10000,真正跨入万人项目了,在这公布下数据统计(真开源,敢反馈) : - 坚持每天4.30-5:00之间发布3+1题目,第330天 - github有10000人关注,全球开源项目排名第1468名 - 总共发布2012道题,涉及html/javascript/css/软技能/vue/react/es/nodejs/jquery等题目,前端类题目全球排名第一,包含各大厂商 - 共有39个作者贡献了题目 - 总共1250位朋友参与答题,共有6165条回复 - 公众号有3710位朋友关注 - 有8次上了github全球热门榜 - 每天从掘金、简书、sf等平台访问过来的人数达到5千人 - 微信上的广告收入:490.55元(广告放在底部,从不干扰读者,后期将会用于相关网站建设支出,服务于社区) - 2020.04.16 — 第366天,前端面试每日3+1,满一年啦,366天从未间断,感谢大家的陪伴与参与!!!未来的日子会继续努力做得更好! - 2020.05.20 — 第440天,3+1在5.20这浪漫的日子上线了(让大家久等了,感谢团队的努力付出):[GO,去瞧瞧](http://www.h-camel.com/index.html) - 2020.05.21 — 第441天,第9次登上github热门榜! ## 在哪可以看到 - [前端向朔](https://blog.csdn.net/u013778905)(CSDN每天同步更新) - [掘金专栏](https://juejin.im/user/5b5ff865f265da0f6b771700/posts)(每天同步更新) - [知乎专栏](https://zhuanlan.zhihu.com/fe-interview)(每天同步更新) - [Github](https://github.com/haizlin/fe-interview)(每天同步更新) - [Gitee](https://gitee.com/haizhilin/fe-interview)(每天同步更新) - [简书专栏](https://www.jianshu.com/c/1ba24fbe0006)(每天同步更新) - [segmentfault专栏](https://segmentfault.com/blog/frontend-interview)(每天同步更新)https://weibo.com/haizlin - [新浪微博](https://weibo.com/haizlin)(每天同步更新) - [开发者头条专栏](https://toutiao.io/subjects/359261)(每天同步更新) - [看云](https://www.kancloud.cn/aya001001/fe-interview)(每周同步更新) - 「前端剑解」 微信公众号(扫描上方二维码,每天同步更新) ## 贡献题目 请在提交PR前先阅读[贡献指南](https://github.com/haizlin/fe-interview/blob/master/.github/PULL_REQUEST_TEMPLATE.md) 感谢所有为"前端面试每日3+1"做出贡献的人! ## 非常棒的开源项目 * 【推荐】欢迎跟 jsliang 一起折腾前端,系统整理前端知识,目前正在折腾 LeetCode,打算打通算法与数据结构的任督二脉。[GitHub 地址](https://github.com/LiangJunrong/document-library) ## 友情链接(大家有好的开源项目和优秀作者,欢迎推荐) * [jsliang的文档库](https://github.com/LiangJunrong/document-library)(每日一道 LeetCode,jsliang 带你进行每日折腾~) * [千古壹号](https://github.com/qianguyihao/Web)(前端入门和进阶学习笔记作者。从零开始学前端,做一个web全栈工程师。) * [CS-Notes](https://github.com/CyC2018/CS-Notes)(技术面试必备基础知识、Leetcode 题解) * [情封](https://github.com/f2er)(公众号「前端早读课」作者情封) * [Nodejs技术栈](https://www.nodejs.red)(公众号「Nodejs技术栈」作者五月君,本文档是作者从事 Node.js Developer 以来的学习历程,旨在为大家提供一个较详细的学习教程,侧重点更倾向于 Node.js 服务端所涉及的技术栈。) * [SHERlocked93](https://github.com/SHERlocked93/blog) (公众号 「前端下午茶」作者,分享前端精选文章,和大家一起成长) * [lucifer](https://github.com/azl397985856/fe-interview) (公众号 「脑洞前端」作者,宇宙最强的前端面试指南) * [_frank](https://mp.weixin.qq.com/s/K3yG4eyuQvZxXIU9jas8kA) (公众号 「前端迷」作者,定期分享源码解析,面试经历以及前端技术) * [达达前端](https://github.com/webVueBlog/vueblog) (公众号 「达达前端」作者,一个热爱前端的达达程序员) * [前端高校](https://github.com/webVueBlog/vueblog) (公众号 「前端高校」作者,置身世外只为暗中观察) * [魔王哪吒](https://juejin.im/user/5e477d7ce51d4526c550a27d) (web前端开发工程师) * [若川](https://github.com/lxchuan12/blog) (公众号 「若川视野」作者,freeCodeCamp杭州社区组织者之一) * [qiangdada](https://github.com/xuqiang521/overwrite) (公众号「合格前端」,定期推送一些精选博文,内容包括但不仅限于前端,不定期进行技术直播分享。) * [木易杨](https://github.com/Advanced-Frontend/Daily-Interview-Question)(公众号「高级前端进阶」和壹题的作者,每天搞定一道前端大厂面试题,一年后会看到不一样的自己。) * [刘小夕](https://github.com/YvetteLau/Step-By-Step)(公众号「前端宇宙」作者刘小夕,我将和大家一起一步一个脚印,向前端专家迈进。) * [koala](https://github.com/koala-coding/goodBlog)(公众号「程序员成长指北」作者,专注 完整的 Node.js 技术栈分享,从 JavaScript 到 Node.js,再到后端数据库,祝您成为优秀的高级 Node.js 工程师。座右铭:今天未完成的,明天更不会完成。) * [第一名的小蝌蚪](https://github.com/airuikun/Weekly-FE-Interview)(每周十道前端大厂面试题,并收集大家在大厂面试中遇到的难题,一起共同成长。) * [勿忘心安](https://github.com/crazylxr)(公众号「前端桃园」) * [yck](https://github.com/InterviewMap/CS-Interview-Knowledge-Map)(公众号「前端真好玩」、「前端面试之道」作者) * [浪里行舟](https://github.com/ljianshu/Blog)(公众号「前端工匠」作者浪里行舟,关注基础知识,打造优质前端博客。) * [小生方勤](https://github.com/wanqihua)(公众号「小生方勤」、前端词典系列作者) * [郭小北](https://github.com/xiaobei666)(公众号「前端你别闹」作者) * [小婷](https://www.zhihu.com/people/wang-ting-83-68-20/activities)(公众号「编程微刊」作者) * [dendoink](https://github.com/DendiSe7enGitHub)(公众号「前端恶霸」作者) * [前端小智](https://juejin.im/user/59df61ec51882578ce26ee6e)(公众号「大迁世界」作者) * [ConardLi](https://github.com/ConardLi)(公众号「code秘密花园」作者) * [RobinsonZhang](https://github.com/robinson90)(公众号「达摩空间」作者,爱分享,爱挑战,技术狂热,不断写作,前沿布道。 我们从小白到大师,慢慢来。) * [Wscats](https://github.com/Wscats/articles)(公众号「前端漫游」作者,始于前端但不止于前端。) * [前端晚练课](https://github.com/fezaoduke/fe-practice-hard)(前端早读课的姊妹篇,每天一个前端知识点,苦练前端真功夫) * [每日一题](https://juejin.im/user/5c31b0176fb9a049f7465912)(每日一题(开开森森学前端系列)) * [前端漫谈](https://juejin.im/user/585a2f52128fe10069ba1b95/posts)(前端漫谈系列) * [前端帮帮忙](https://juejin.im/user/57b26b806be3ff006bb97122/posts)(前端帮帮忙系列) * [面试官](https://juejin.im/user/58d8cd0644d9040069433edb/posts)(面试官系列) * [面试图谱](https://yuchengkai.cn/docs/) (打造最好的面试图谱) * [前端知识整理](https://github.com/pingan8787/Leo-JavaScript) (Cute系列更新一些系列文章和框架demo,作为自己学习结果的输出,喜欢的朋友欢迎 👉star) * 洞见前端小程序-(微信搜索,非常有意思的小程序,刷题必备) * 前端荣耀小程序-(微信搜索,非常有意思的小程序,通关打卡还有排行榜) ## 转载说明 > 近期,看到很多网络上的朋友滥用链接,滥用面试题,包装了下就收费了,让有需要的朋友找不到最新的试题,违背了我的初衷,特添加了些声明: - 声明 1. 可以转载里面的所有面试题用到任何地方,但请添加仓库的地址,因为转载后你们很少会更新了,但此仓库每天都会准时更新。 2. 此开源仓库从不收取任何费用,**现在不会,以后也不会**,也不会授权任何人/机构进行收费。 3. 大家不需要对此仓库进行爬虫,如有需要什么格式的,可以私聊我,比如本地阅读的PDF,我有时间会做成PDF的,方便大家! ## License [![MIT](http://api.haizlin.cn/api?mod=interview&ctr=issues&act=generateSVG&type=a.svg)](https://github.com/haizlin/fe-interview/blob/master/LICENSE)