# Interview **Repository Path**: ruanxiongbiao/Interview ## Basic Information - **Project Name**: Interview - **Description**: 我是追梦赤子心,公众号「深圳湾码农」的作者,某上市集团公司高级前端开发,深耕前端领域多年,每天攻破一道题,带你从0到1系统构建web全栈完整的知识体系! - **Primary Language**: JavaScript - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2024-03-14 - **Last Updated**: 2024-03-15 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Interview 大前端每日一题,从基础到进阶,从原理到实战,用面试题来倒逼强迫自己每天去学习去查漏补缺 ,系统构建前端完整的知识体系! 注:每天早上9点左右更新题目及前一天的答案,首页文件夹里的文章来源于网络,仅供参考学习使用,若有侵权,烦请联系我删除!(有时github访问不太稳定,更新可能会有延迟) > 业精于勤,荒于嬉;行成于思,毁于随!学习从来都不是一蹴而就的事情,需要每天的点滴积累与沉淀,从而由量变引发质变! ## 今日一题: > Day407: 有一堆整数,请把他们分成三份,确保每一份和尽量相等(11,42,23,4,5,6 4 5 6 11 23 42 56 78 90)-滴滴 讨论与参考答案:[第407题](https://github.com/qappleh/Web-Daily-Question/issues/410) ## 每日一题投稿: > 可以把题目发送到邮箱2317472862@qq.com! ## 大厂面试: 公众号已发的BAT等大厂的面经、面试题、简历准备、面试技巧等相关话题! [大厂面经面试题汇总](https://mp.weixin.qq.com/mp/appmsgalbum?__biz=MzA4MDg4NDczMQ==&action=getalbum&album_id=1790586969761103872#wechat_redirect) ## 一周汇总 >[第313题(2020-09-26):编写一个算法解析以下符号,转换为json树的结构 (美团)](https://github.com/qappleh/Web-Daily-Question/issues/316) 讨论与参考答案:[第313题](https://github.com/qappleh/Web-Daily-Question/issues/316) >[第312题(2020-09-25):给你一个由 '1'(陆地)和 '0'(水)组成的的二维网格,请你计算网格中岛屿的数量](https://github.com/qappleh/Web-Daily-Question/issues/315) 讨论与参考答案:[第312题](https://github.com/qappleh/Web-Daily-Question/issues/315) >[第311题(2020-09-24):假设把某股票的价格按照时间先后顺序存储在数组中,请问买卖该股票一次可能获得的最大利润是多少?](https://github.com/qappleh/Web-Daily-Question/issues/314) 讨论与参考答案:[第311题](https://github.com/qappleh/Web-Daily-Question/issues/314) >[第310题(2020-09-23):说说 vue 如何收集依赖的?](https://github.com/qappleh/Web-Daily-Question/issues/313) 讨论与参考答案:[第310题](https://github.com/qappleh/Web-Daily-Question/issues/313) >[第309题(2020-09-22):实现格式化输出,比如输入 999999999,输出 999,999,999? ](https://github.com/qappleh/Web-Daily-Question/issues/312) 讨论与参考答案:[第309题](https://github.com/qappleh/Web-Daily-Question/issues/312) >[第308题(2020-09-21):原生实现 ES5 的 Object.create()方法](https://github.com/qappleh/Web-Daily-Question/issues/311) 讨论与参考答案:[第308题](https://github.com/qappleh/Web-Daily-Question/issues/311) ## 分类 ### HTML >[第112题(2019-12-24):请使用canvas画一个五角星。](https://github.com/qappleh/Web-Daily-Question/issues/114) 讨论与参考答案:[第112题](https://github.com/qappleh/Web-Daily-Question/issues/114) >[第190题(2020-04-10):dangerousSetInnerHTMl知道不?和innerHTML的区别?(美团)](https://github.com/qappleh/Web-Daily-Question/issues/192) 讨论与参考答案:[第190题](https://github.com/qappleh/Web-Daily-Question/issues/192) >[第202题(2020-04-27):dom树和cssom树原理是什么?(阿里)](https://github.com/qappleh/Web-Daily-Question/issues/204) 讨论与参考答案:[第202题](https://github.com/qappleh/Web-Daily-Question/issues/204) ### CSS >[第24题(2019-08-22):介绍下重绘和回流(Repaint & Reflow),以及如何进行优化](https://github.com/qappleh/Web-Daily-Question/issues/26) 讨论与参考答案:[第24题](https://github.com/qappleh/Web-Daily-Question/issues/26) >[第203题(2020-04-28):响应式背后的浏览器原理你知道吗?(阿里)](https://github.com/qappleh/Web-Daily-Question/issues/205) 讨论与参考答案:[第205题](https://github.com/qappleh/Web-Daily-Question/issues/205) >[第220题(2020-05-25):flex: 0 1 auto 表示什么意思?(拼多多)](https://github.com/qappleh/Web-Daily-Question/issues/222) 讨论与参考答案:[第220题](https://github.com/qappleh/Web-Daily-Question/issues/222) ### javaScript >[第1题(2019-07-22) 以下代码会输出什么?](https://github.com/qappleh/Web-Daily-Question/issues/3) 讨论与参考答案:[第1题](https://github.com/qappleh/Web-Daily-Question/issues/3) >[第2题(2019-07-23):a在什么情况下,控制台会输出hello world(答案不唯一)](https://github.com/qappleh/Web-Daily-Question/issues/4) 讨论与参考答案:[第2题](https://github.com/qappleh/Web-Daily-Question/issues/4) >[第3题(2019-07-24):请使用原型链相关知识实现b继承n=1;c继承n=2;m=3](https://github.com/qappleh/Web-Daily-Question/issues/5) 讨论与参考答案:[第3题](https://github.com/qappleh/Web-Daily-Question/issues/5) >[第4题(2019-07-25) 以下代码输出什么?](https://github.com/qappleh/Web-Daily-Question/issues/6) 讨论与参考答案:[第4题](https://github.com/qappleh/Web-Daily-Question/issues/6) >[第5题(2019-07-26) 已知以下数组: 编写一个程序将数组扁平化去并除其中重复部分数据,最终得到一个升序并且不重复的数组 ](https://github.com/qappleh/Web-Daily-Question/issues/7) 讨论与参考答案:[第5题](https://github.com/qappleh/Web-Daily-Question/issues/7) >[第6题(2019-07-29):实现一个函数add,满足下列输出结果](https://github.com/qappleh/Web-Daily-Question/issues/8) 讨论与参考答案:[第6题](https://github.com/qappleh/Web-Daily-Question/issues/8) >[第7题(2019-07-30):以下代码会输出什么?](https://github.com/qappleh/Web-Daily-Question/issues/9) 讨论与参考答案:[第7题](https://github.com/qappleh/Web-Daily-Question/issues/9) >[第10题(2019-08-02):输出以下代码运行结果](https://github.com/qappleh/Web-Daily-Question/issues/12) 讨论与参考答案:[第10题](https://github.com/qappleh/Web-Daily-Question/issues/12) >[第12题(2019-08-6):编程题,根据以下要求,写一个数组去重函数](https://github.com/qappleh/Web-Daily-Question/issues/14) 讨论与参考答案:[第12题](https://github.com/qappleh/Web-Daily-Question/issues/14) >[第13题(2019-08-7):为什么for循环嵌套顺序会影响性能?](https://github.com/qappleh/Web-Daily-Question/issues/15) 讨论与参考答案:[第13题](https://github.com/qappleh/Web-Daily-Question/issues/15) >[第14题(2019-08-8):统计 1 ~ n 整数中出现 1 的次数](https://github.com/qappleh/Web-Daily-Question/issues/16) 讨论与参考答案:[第14题](https://github.com/qappleh/Web-Daily-Question/issues/16) >[第15题(2019-08-09):修改以下 print 函数,使之输出 0 到 99,或者 99 到 0 ](https://github.com/qappleh/Web-Daily-Question/issues/17) 讨论与参考答案:[第15题](https://github.com/qappleh/Web-Daily-Question/issues/17) >[第18题(2019-08-14):实现一个 sleep 函数,比如 sleep(1000) 意味着等待1000毫秒,可从 Promise、Generator、Async/Await 等角度实现](https://github.com/qappleh/Web-Daily-Question/issues/19) 讨论与参考答案:[第18题](https://github.com/qappleh/Web-Daily-Question/issues/19) >[第20题(2019-08-16):下面代码中 a 在什么情况下会打印 1?](https://github.com/qappleh/Web-Daily-Question/issues/22) 讨论与参考答案:[第20题](https://github.com/qappleh/Web-Daily-Question/issues/22) >[第21题(2019-08-19):vue 是如何对数组方法进行变异的?例如 push、pop、splice 等方法](https://github.com/qappleh/Web-Daily-Question/issues/23) 讨论与参考答案:[第21题](https://github.com/qappleh/Web-Daily-Question/issues/23) >[第22题(2019-08-20)::ES5/ES6 的继承除了写法以外还有什么区别?](https://github.com/qappleh/Web-Daily-Question/issues/24) 讨论与参考答案:[第22题](https://github.com/qappleh/Web-Daily-Question/issues/24) >[第23题(2019-08-21):介绍下观察者模式和订阅-发布模式的区别,各自适用于什么场景 ](https://github.com/qappleh/Web-Daily-Question/issues/25) 讨论与参考答案:[第23题](https://github.com/qappleh/Web-Daily-Question/issues/25) >[第25题(2019-08-23):有以下 3 个判断数组的方法,Object.prototype.toString.call() 、 instanceof 以及 Array.isArray(),请分别介绍它们之间的区别和优劣](https://github.com/qappleh/Web-Daily-Question/issues/27) 讨论与参考答案:[第25题](https://github.com/qappleh/Web-Daily-Question/issues/27) >[第26题(2019-08-26):输出以下代码执行结果](https://github.com/qappleh/Web-Daily-Question/issues/28) 讨论与参考答案:[第26题](https://github.com/qappleh/Web-Daily-Question/issues/28) >[第29题(2019-08-29):什么是防抖和节流?有什么区别?如何实现?](https://github.com/qappleh/Web-Daily-Question/issues/31) 讨论与参考答案:[第29题](https://github.com/qappleh/Web-Daily-Question/issues/31) >[第30题(2019-08-30):如何将 [{id: 1}, {id: 2, pId: 1}, ...] 的重复数组(有重复数据)转成树形结构的数组 [{id: 1, child: [{id: 2, pId: 1}]}, ...] (需要去重)](https://github.com/qappleh/Web-Daily-Question/issues/32) 讨论与参考答案:[第30题](https://github.com/qappleh/Web-Daily-Question/issues/32) >[第31题(2019-09-02):介绍下 Set、Map、WeakSet 和 WeakMap 的区别?](https://github.com/qappleh/Web-Daily-Question/issues/33) 讨论与参考答案:[第31题](https://github.com/qappleh/Web-Daily-Question/issues/33) >[第32题(2019-09-03):考察作用域的一道代码题](https://github.com/qappleh/Web-Daily-Question/issues/34) 讨论与参考答案:[第32题](https://github.com/qappleh/Web-Daily-Question/issues/34) >[第34题(2019-09-05):请把俩个数组 [A1, A2, B1, B2, C1, C2, D1, D2] 和 [A, B, C, D],合并为 [A1, A2, A, B1, B2, B, C1, C2, C, D1, D2, D]](https://github.com/qappleh/Web-Daily-Question/issues/36) 讨论与参考答案:[第34题](https://github.com/qappleh/Web-Daily-Question/issues/36) >[第35题(2019-09-06):使用迭代的方式实现 flatten 函数](https://github.com/qappleh/Web-Daily-Question/issues/37) 讨论与参考答案:[第35题](https://github.com/qappleh/Web-Daily-Question/issues/37) >[第36题(2019-09-09):改造下面的代码,使之输出0 - 9,写出你能想到的所有解法](https://github.com/qappleh/Web-Daily-Question/issues/38) 讨论与参考答案:[第36题](https://github.com/qappleh/Web-Daily-Question/issues/38) >[第52题(2019-10-08):谈谈你对事件委托(代理)的理解及它们的使用场景](https://github.com/qappleh/Web-Daily-Question/issues/54) 讨论与参考答案:[第52题](https://github.com/qappleh/Web-Daily-Question/issues/54) >[第53题(2019-10-09):谈谈你对闭包的理解、优缺点及使用场景](https://github.com/qappleh/Web-Daily-Question/issues/55) 讨论与参考答案:[第53题](https://github.com/qappleh/Web-Daily-Question/issues/55) >[第54题(2019-10-10):实现一个函数clone,可以对JavaScript中的5种主要的数据类型(包括Number、String、Object、Array、Boolean)进行值复制 ](https://github.com/qappleh/Web-Daily-Question/issues/56) 讨论与参考答案:[第54题](https://github.com/qappleh/Web-Daily-Question/issues/56) >[第55题(2019-10-11):在Javascript中什么是伪数组?如何将伪数组转化为标准数组?](https://github.com/qappleh/Web-Daily-Question/issues/57) 讨论与参考答案:[第55题](https://github.com/qappleh/Web-Daily-Question/issues/57) >[第56题(2019-10-12):对作用域上下文和this的理解,看下列代码:](https://github.com/qappleh/Web-Daily-Question/issues/58) 讨论与参考答案:[第56题](https://github.com/qappleh/Web-Daily-Question/issues/58) >[第57题(2019-10-14):编写一个 JavaScript 函数,输入指定类型的选择器 ( 仅需支持 id , class ,tagName 三种简单 CSS 选择器,无需兼容组合选择器 ) 可以返回匹配的 DOM 节点,需考虑浏览器兼容性和性能。](https://github.com/qappleh/Web-Daily-Question/issues/59) 讨论与参考答案:[第57题](https://github.com/qappleh/Web-Daily-Question/issues/59) >[第58题(2019-10-15):定义一个log方法,让它