<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          精選大廠前端面試高頻 100 題

          共 10272字,需瀏覽 21分鐘

           ·

          2020-12-27 00:58



          引言

          半年時(shí)間,幾千人參與,精選大廠前端面試高頻 100 題,這就是「壹題」。

          在 2019 年 1 月 21 日這天,「壹題」項(xiàng)目正式開始,在這之后每個(gè)工作日都會(huì)出一道高頻面試題,主要涵蓋阿里、騰訊、頭條、百度、網(wǎng)易等大公司和常見題型。得益于大家熱情參與,現(xiàn)在每道題都有很多答案,提供的解題思路和答案也大大增長了我的見識,到現(xiàn)在已累積 100 道題目,?8000+?』Star 了,可以說你面試中遇到過的題目,在這里肯定能發(fā)現(xiàn)熟悉的身影。

          后期計(jì)劃除了持續(xù)更新「壹題」之外,還將整理非常詳細(xì)的答案解析,提供完整的思考鏈路,幫助大家更好的理解題目,以及題目背后的知識,「我們的目標(biāo)不是背題,而是通過題目查漏補(bǔ)缺,溫故知新」,歡迎大家加群討論。

          更多更全更詳細(xì)的每日一題和答案解析,戳這里查看:?https://github.com/Advanced-Frontend/Daily-Interview-Question(以下每一題的解析,這個(gè)鏈接中都有,點(diǎn)擊「閱讀原文」學(xué)習(xí)吧)

          第 1 - 10 題

          第 1 題:(滴滴、餓了么)寫 React / Vue 項(xiàng)目時(shí)為什么要在列表組件中寫 key,其作用是什么?

          第 2 題:`['1', '2', '3'].map(parseInt)` what & why ?

          第 3 題:(挖財(cái))什么是防抖和節(jié)流?有什么區(qū)別?如何實(shí)現(xiàn)?

          第 4 題:介紹下 Set、Map、WeakSet 和 WeakMap 的區(qū)別?

          第 5 題:介紹下深度優(yōu)先遍歷和廣度優(yōu)先遍歷,如何實(shí)現(xiàn)?

          第 6 題:請分別用深度優(yōu)先思想和廣度優(yōu)先思想實(shí)現(xiàn)一個(gè)拷貝函數(shù)?

          第 7 題:ES5/ES6 的繼承除了寫法以外還有什么區(qū)別?

          第 8 題:setTimeout、Promise、Async/Await 的區(qū)別

          第 9 題:(頭條、微醫(yī))Async/Await 如何通過同步的方式實(shí)現(xiàn)異步

          第 10 題:(頭條)異步筆試題

          請寫出下面代碼的運(yùn)行結(jié)果

          async?function?async1()?{
          ????console.log('async1?start');
          ????await?async2();
          ????console.log('async1?end');
          }
          async?function?async2()?{
          ????console.log('async2');
          }
          console.log('script?start');
          setTimeout(function()?{
          ????console.log('setTimeout');
          },?0)
          async1();
          new?Promise(function(resolve)?{
          ????console.log('promise1');
          ????resolve();
          }).then(function()?{
          ????console.log('promise2');
          });
          console.log('script?end');

          第 11 - 20 題

          第 11 題:(攜程)算法手寫題

          已知如下數(shù)組:

          var arr = [ [1, 2, 2], [3, 4, 5, 5], [6, 7, 8, 9, [11, 12, [12, 13, [14] ] ] ], 10];

          編寫一個(gè)程序?qū)?shù)組扁平化去并除其中重復(fù)部分?jǐn)?shù)據(jù),最終得到一個(gè)升序且不重復(fù)的數(shù)組

          第 12 題:(滴滴、挖財(cái)、微醫(yī)、海康)JS 異步解決方案的發(fā)展歷程以及優(yōu)缺點(diǎn)。

          第 13 題:(微醫(yī))Promise 構(gòu)造函數(shù)是同步執(zhí)行還是異步執(zhí)行,那么 then 方法呢?

          第 14 題:(兌吧)情人節(jié)福利題,如何實(shí)現(xiàn)一個(gè) new

          第 15 題:(網(wǎng)易)簡單講解一下http2的多路復(fù)用

          第 16 題:談?wù)勀銓CP三次握手和四次揮手的理解

          第 17 題:A、B 機(jī)器正常連接后,B 機(jī)器突然重啟,問 A 此時(shí)處于 TCP 什么狀態(tài)

          如果A 與 B 建立了正常連接后,從未相互發(fā)過數(shù)據(jù),這個(gè)時(shí)候 B 突然機(jī)器重啟,問 A 此時(shí)處于 TCP 什么狀態(tài)?如何消除服務(wù)器程序中的這個(gè)狀態(tài)?(超綱題,了解即可)

          第 18 題:(微醫(yī))React 中 setState 什么時(shí)候是同步的,什么時(shí)候是異步的?

          第 19 題:React setState 筆試題,下面的代碼輸出什么?

          class?Example?extends?React.Component?{
          ??constructor()?{
          ????super();
          ????this.state?=?{
          ??????val:?0
          ????};
          ??}

          ??componentDidMount()?{
          ????this.setState({val:?this.state.val?+?1});
          ????console.log(this.state.val);????//?第?1?次?log

          ????this.setState({val:?this.state.val?+?1});
          ????console.log(this.state.val);????//?第?2?次?log

          ????setTimeout(()?=>?{
          ??????this.setState({val:?this.state.val?+?1});
          ??????console.log(this.state.val);??//?第?3?次?log

          ??????this.setState({val:?this.state.val?+?1});
          ??????console.log(this.state.val);??//?第?4?次?log
          ????},?0);
          ??}

          ??render()?{
          ????return?null;
          ??}
          };

          第 20 題:介紹下 npm 模塊安裝機(jī)制,為什么輸入 npm install 就可以自動(dòng)安裝對應(yīng)的模塊?

          第 21 - 30 題

          第 21 題:有以下 3 個(gè)判斷數(shù)組的方法,請分別介紹它們之間的區(qū)別和優(yōu)劣

          Object.prototype.toString.call() 、 instanceof 以及 Array.isArray()

          第 22 題:介紹下重繪和回流(Repaint & Reflow),以及如何進(jìn)行優(yōu)化

          第 23 題:介紹下觀察者模式和訂閱-發(fā)布模式的區(qū)別,各自適用于什么場景

          第 24 題:聊聊 Redux 和 Vuex 的設(shè)計(jì)思想

          第 25 題:說說瀏覽器和 Node 事件循環(huán)的區(qū)別

          第 26 題:介紹模塊化發(fā)展歷程

          可從IIFE、AMD、CMD、CommonJS、UMD、webpack(require.ensure)、ES Module、

          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                    <th id="afajh"><progress id="afajh"></progress></th>
                    日韩影音资源网 | 特级一级黄色片免费看 | 欧美成人免费网站 | 女人一级A片色黄情免费 | 自拍做爱视频 |