1. 程式人生 > >網易2019秋招前端一站式面經(基礎面+壓力面+HR面,面完博主覺得應該進不去)

網易2019秋招前端一站式面經(基礎面+壓力面+HR面,面完博主覺得應該進不去)

面試時間:2018.9.18 13:30

面試地點:武漢雄楚國際大酒店(洪山區)

面試部門:網易雲音樂

本人學校所在城市:深圳(深圳大學)

先來個博主基本資訊吧:我是通訊工程專業的,並非計算機專業,屬於計算機相關專業~。

過程(如果只想瞭解面試問的問題可跳躍閱讀):

博主買的2018.9.17的高鐵,因為網易說可以報銷去程車費,故享受了一把。

但是全國人應該都知道,2018.9.16是有史以來最大的颱風“山竹”席捲沿海城市,把深圳給摧殘了一番,故導致深圳地鐵、公交和鐵路全部停運。我的那一趟列車也是處於暫停售票的狀態,但是16號的列車全部通知購買者去退票。由於我的列車未被通知退票,自己心裡想著山竹大可愛估計在17號降了火變成小可愛了,列車不會受到影響的,結果也是我所預料的一樣,我如願在17號到達武漢。

PS:中途上車的時候我以為上不了,由於颱風影響,很多人的車都集中改簽到了我這趟,所以取票的人炒雞多!我到車站的時候只有20分鐘列車就要出發了,我心想完了!取不了票了,因為前面全部都是人頭,這輪到我至少得兩個小時,還不算插隊的...後來我硬著臉皮去最前面的一個小姐姐跟前說:小姐姐,我的車就要開了,能不能讓我先取票?小姐姐一臉嫌棄的揮了揮手,同意了(意思是我很醜?!),然後我等了10分鐘,但是我前面的那位大叔買票一直買不到了,窩草,心急如焚吶!正在著急的時候,突然聽到廣播說用二代身份證網購的票不用取,直接刷身份證就可以乘車...媽賣批,於是我瘋了似的往乘車入口點跑...

到達武漢之後由於在武漢有認識的好朋友在本地,由於他上班的原因,他叫了他的好朋友開車接我,於是我乘車去到了武漢華中科技大學去找我高中的好同學,某燦同學。他也是在秋招,穿的人模人樣的。當天下午就在華科感受了下某燦所說高階飯堂,體驗完了之後,說實在的,沒有咱深大的高大上~深大的高階食堂是有很多裝飾品的,有一股文藝範~華科沒有,全是桌子板凳...但是最重要的是華科的菜超級便宜!!!我點了7份菜+一份粥才特麼18元!可是咱深大就一份飯+一份菜最低就已經有18了...

吃完他帶我去小逛了下華科校園,說實話我並不打算全部逛完的,因為他自己對於華科也不是完全熟悉,因為太大了...

大概晚上八點的時候,我離開華科前往光谷地鐵站和我的好朋友碰面,碰面後,在他住的附近的賓館(想住酒店來著...)訂了兩晚,好朋友準備晚上請我吃燒烤喝酒,我說NM你這要我面不成試啊,想要我拉肚子嗎?於是拒絕了,就去水果店買了點水果用於清理腸胃。

第二天,也就是2018.9.18,起床後給我可愛的小仙女媽媽打了個電話,給她一個祝福,因為是她的生日。所以這一天對我真的很重要,意義非凡!

等到早上11點的時候,好朋友來接我,我吃了一根香蕉就匆忙下樓和他一起前往車站取票(乘高鐵刷的是身份證,沒來得及把票取出來),因為網易可以報銷呀,538塊大洋呢。取完趕到酒店已經下午一點鐘了,於是在門口簽了到就乘電梯上到21樓等候叫號(微信公眾號推送)。

13:33業務初面(基礎面)

面了將近50分鐘,我剛走出面試官房間的時候,公眾號就來了推送,說我通過了業務初面,靜等業務復面。這個是我預料到的,因為我全程都是出於一種偏自信的狀態,而且面試官問的是基礎專業問題,沒有追問,我大部分都回答的還不錯。

下面是詳細初面過程,只記得大部分了。

面試官(姓馮,挺和藹的):做一下自我介紹吧 我:balabala...我學習前端知識有這幾個途徑:1)看視訊;2)看書;3)逛部落格。csdn,掘金,簡書,部落格園等;4)與同學交流;5)實習做專案;6)將遇到的問題整理成部落格。個人很喜歡運動,曾獲得深大(xxx羽毛球賽)男雙冠軍,也很喜歡旅遊和音樂,特別是音樂,我常用網易雲音樂,在我空閒的時候我可以玩上一整天都不帶累的,就跟某某說的一樣,這是一款你用了就不會離開的APP(說完後面一串傻笑......可以腦補...哦呵呵) 面試官:你用過哪些框架? 我:在第一家實習的公司裡最常用的是JQuery,第二家公司最常用的是VUE。 面試官:那你知道JQuery和VUE操作DOM的區別嗎? 我:JQuery是要先獲取到DOM物件,然後再對DOM物件進行修改和賦值等操作;而VUE由於是資料雙向繫結,所以我們只需要修改DOM物件的值就可以了。(我這裡vue回答的很片面,回答的不好。修改之後的回答:vue是首先把值和js物件進行了繫結,然後要修改js物件的值的時候,由於vue已經幫我們做了dom操作,所以vue會自動把dom的值進行更新) 面試官:JQuery是怎麼選中一個id=a的標籤的?原生的js怎麼獲取?區分大小寫嗎? 我(這題不是送分題嗎...):通過$選擇器選取,即$("#a");原生js實現方式是:document.getElementById("a");區分大小寫,document沒有獲取DOM物件小寫的方法 面試官:JQuery怎麼獲取子元素?子元素的個數怎麼確定? 我(又是一道送分題...):通過$("#a").children()獲取子元素,再通過length屬性獲取子元素的個數。 面試官:用過正則沒? 我:用得少,只瞭解少部分,功能很強大,但是有時候其時間複雜度沒有原生js寫出來的效果好。 面試官:那你寫一個驗證手機正則表示式 我(完了,不會,正則基本沒複習):目前寫不出來 面試官:瞭解二叉樹嗎? 我(怪自己啊,一般大公司都會考這些基本的計算機知識,但我就是沒了解):我目前只知道滿二叉樹和完全二叉樹。滿二叉樹有一個根節點,其下每個子節點都有且僅有兩個子節點,直到最後一層為止;完全二叉樹是在倒數第二層的時候,右邊的子節點沒有子節點,這些節點也成為葉子節點。(回答的真心勉強) 面試官:那你瞭解xx二叉樹嗎? 我(這種面試官問的二叉樹我目前沒聽說過,是什麼二叉樹忘記了...):沒有,沒聽說過 面試官:那連結串列等資料結構呢? 我(我r...):連結串列也瞭解的少 面試官:那你知道二分查詢的時間複雜度是多少嗎? 我:o(nlog2n)?(馬德,我的回答是猜的,是根據常見排序演算法懵的) 面試官看了看沒說話,但是實際上是o(log2n) 面試官:CSS position有哪些取值? 我:最常用的有四個。 static:是position的預設值,若是給它設定top,left,right,bottom是不會生效的; relative:依靠自身位置進行定位,元素未脫離文件流且保留原來的位置,可使用z-index設定層級; absolute:如果祖先元素設定了定位,那麼其位置以離其最近的祖先元素的位置為基準進行定位;如果祖先元素未設定定位,預設以body為基準;可以使用z-index進行層級設定且元素脫離文件流; fixed:元素以瀏覽器視窗(body)進行定位,可以利用z-index設定層級,脫離文件流。 補充:還有inherit和sticky 面試官:說說JQuery的ajax跨域問題,它的請求資料型別可以有哪些? 我:跨域問題就是請求的協議、埠、域名不同;它的請求資料型別可以有json、jsonp等 面試官:說說Jsonp跨域原理 我:Jsonp是通過動態新增一個<script>標籤,在其src屬性裡設定的值為要跨域訪問的域名路徑,路徑後攜帶一個callback函式,然後,在本地的js檔案裡預先定義好callback函式,一旦資料請求成功,就會將資料以JSON的格式傳遞至callback函式中。 面試官:HTTP有哪些頭部欄位,你試著寫下來我看看 我(忘了很多,因為專心理解tcp三次和四次握手了):Etag、Last-Modified、Expires、Max-age 後來我查了下,簡直了,超級多,難怪在HTTP升級後有壓縮頭部的技術,因為這樣可以提升請求速率。如下: 請求頭(多數常見部分):Accept、Accept-Charset、Accept-Language、Authorization、Cache-Control、Connection、Content-Length、Cookie、Date、Host、Origin、Pragma、Referer、User-Agent 響應頭:Access-Control-Allow-Origin、Cache-Control、Connection、Content-Language、Content-Length、Date、Etag、Expires、Last-Modified、Location、Pragma、Status 面試官:看你的專案經驗,你做了很多小程式啊,跟我說說小程式是怎麼進行本地資料儲存的? 我(因為好久沒做小程式了,都忘了,哈麻批,於是我繞開了,說了下web的本地儲存):小程式的本地儲存跟web的本地儲存有類似的地方,web的本地儲存有sessionStorage和localStorage,小程式本地儲存有同步和非同步儲存(因為是在想不起那個api怎麼寫了,後來查了下是這樣的:wx.setStorage(key,value),這是非同步的;wx.setStorageSync(key,value)這是同步的) 面試官:如果你進了網易,你怎麼在同行中表現的更突出,學習的更快? 我:balabala......(我說出了我的部落格座右銘:活到老,學到死,哦呵呵呵......)

15:40業務復面(壓力面)

面了50+分鐘,我是心情沉重走出來的,因為我已經被面的懷疑自己的能力了...我下樓之後,我好朋友看到我的表情後說了一句:看你這死樣,就知道GG了,趕緊上車去海康威視面試吧。我......

詳細過程(中間忘了些,可能因為壓力太大讓我當場出現了選擇性失憶吧~):

面試官(姓孔,超級嚴肅):做一下自我介紹 我(壓力面千萬要注意此處的自我介紹,這是是否過壓力面的關鍵!因為面試官就是根據你的自我介紹來隨機提問題的!下面問的問題全部是我在做自我介紹的時候我自己提到的,給自己挖了不少坑):其實我心裡面想的是不是還可以跟第一面一樣,以輕鬆的方式去介紹自己,可是後來發現我錯的離譜,因為該面是壓力面,面試官註定不會和你打哈哈。 面試官:說說閉包,你是怎麼理解的? 我(其實在面試之前我看過,但是理解的不深,這次真心給了我教訓):閉包用一句話來說就是函式的巢狀,內層函式能訪問外部函式內的所有變數。因為...(我還說完面試官就阻止我了) 面試官:好,可以了,光說沒用,你手寫一個閉包,同時寫出它的呼叫方式 我在紙上寫了一個閉包,當時是憑著腦海中的印象去寫的,感覺就像是背出來的一樣,根本沒有理清本質原理,由於寫的是對的,呼叫的時候突然想不起來怎麼呼叫了,這裡就不貼出來了 面試官:你確定你這樣寫是對的嗎? 我:看了下程式碼回答是的 面試官:我怎麼覺得是錯的呢?你再好好看看,是你這樣呼叫的嗎? 那個時候根本沒意識到面試官其實在引導我往正確的方向走,可能太緊張了。其實再進行一次賦值就可以呼叫閉包了,但是當時我就是沒意識到,哎。於是我特麼蠢到居然去修改閉包的程式碼,而不是往呼叫的方向去想,蠢死了我!於是我又寫了閉包的另外一種形式,呼叫一次是沒問題的,但是多次就不行了。 面試官:你再好好想想,是你這樣的麼?我怎麼覺得會報錯? 我看了看程式碼,只發現少了個大括號,但是面試官說那個不影響......實現沒辦法了,正確的應該是這樣子,如下:

面試官:好了,我們不再糾結這個問題了,你說你練過一些演算法,那麼現在有兩個陣列,裡面的元素只知道是整數型數字,長度不知道,你怎麼判斷兩個陣列相等? 我(還在沉浸閉包那個問題,那個問題估計讓面試官很失望吧):數組裡麵包含有重複的元素嗎?索引值不同,但是元素值相同也算嗎? 面試官:是的 我:首先判斷兩個陣列的長度是否相同,不相同則返回false 面試官:嗯 我(想了會):然後用sort給它們從小到大排序,排序之後,再用一個for迴圈遍歷其中一個數組,遍歷的元素與另一個數組裡對應的元素進行對比,一旦有一個不同,則返回false,否則返回true 面試官:你寫的程式碼時間複雜度是多少? 我:o(n) 面試官:只有o(n)嗎?你上面的排序不算? 我:......要算的,o(2n)? 面試官:你見過常見的排序演算法的時間複雜度有低於o(n)的嗎? 我:沒有 面試官:常用的排序演算法有哪些? 我:冒泡、快排、選擇、插入、歸併等 面試官:那你現在還有沒有什麼辦法將時間複雜度降到最低?(這裡問的還是剛才那個陣列相同的題) 我(想了大概三四秒吧,突然靈光一閃):將兩個陣列都轉化為字串,然後再對這兩個字串進行對比 面試官:時間複雜度是多少? 我:o(1) 面試官:比剛才好很多了是吧 我(我現在覺得這個面試官真心的好,一直在引導你思考,雖然很嚴格):嗯嗯 面試官:現在有一個模態框,已經彈出了,你怎麼設計這個模態框彈出後,使用者只能點選按鈕,其他部分不可點選? 我(送分的):設計一個盒子,設定該盒子的position屬性的值為absolute(後來想了下,可能出現的問題,立馬又改口了),不,不能設定為absolute,應該為fixed(這裡我並沒有向面試官說明原因,他也沒打斷我。原因其實很簡單,如果某個頁面的高度超過了瀏覽器可視視窗的高度,那麼右邊會出現滾動條,使用者一旦往下滾,用absolute的話,下面是遮蓋不住的,不信大家可去驗證),設定之後給它一個透明度rgba。然後在其內部再新建一個小盒子,盒子的position屬性值設定為absolute,讓其垂直居中即可。 面試官:那這兩個盒子的層級是怎麼樣的? 我:父級盒子的層級比子盒子的層級要低 面試官:cookie是儲存在哪的?js是怎麼操作它的? 我(當時覺得好多知識都記混了,頓時不知道該怎麼回答了):cookie是使用者登入網站後,伺服器返回的通過加密的資料,它儲存在瀏覽器中(應該是終端中),目前好像沒有啥方法可以操作cooike的吧,因為cookie都在攜帶在http請求中的。 面試官:你確定?為什麼不能操作cookie?那你知道document.cookie這個方法嗎? 我(我擦,就這個來操作的嗎?):知道 面試官:那你現在知道cookie是由js人為操作的吧? 我:對,可以刪除可以新增,通過鍵值對的形式 面試官:你對這些瞭解還不夠深,過後你可以看看,JQuery原始碼你看過沒? 我:看的比較少,瞭解的不多,但是在運用方面,還是有些經驗 面試官學習建議:專注底層原理,多看書,多實踐

由於我覺得二面沒戲了,於是我們駕車去海康威視面試,地點就在華科的旁邊,走了18分鐘的車程,快到了的時候,網易招聘公眾號發來推送,通知我業務復面通過(估計那個演算法題我反應比較快吧),靜等下一輪面試...我心裡面頓時激動的要死,死灰復燃,趕緊叫我好朋友掉頭往回趕。

可是...那個傻帽把路給走錯了...錯過了最後一輪面試......我還能說什麼...

我是怎麼知道錯過了呢?是因為網易招聘公眾號發來推送,提示說:由於您長時間未前面面試地點,面試官已推遲了你的面試,請聯絡校招工作人員重新確認。

我心裡想,好像還有機會,又花了大概二十分鐘趕到了網易面試點,在21樓小姐姐處重新確認了最後一輪面試。

18:09終面(HR面)

面了將近35分鐘。我心裡表示不平衡,因為別人都面試50分鐘,我卻只有35分鐘,我還有我的突出點沒說呢...可能是因為到了六點吧,面試官都餓了...另外可能就是覺得我不優秀?!(因為我在HR這一面的坑,跳了一波又一波...)

詳細過程(這個過程我打心底最不靠譜,這是我第一次經歷hr面,給我的感覺就是被牽著鼻子走,中途還總是打斷我,體驗及其不佳!關鍵的是那位小姐姐很漂亮啊!她要打斷我我能怎麼辦?無奈):

面試官(一個26左右的小姐姐):說說你在實習期間遇到過最困難的一件事情,你是怎麼解決的? 我(意料之中的問題,但我就是沒準備):根據自己實情出發 面試官:說說你的三個缺點和三個優點,你的優點給你帶來了哪些成長? 好討厭這種問題啊!給大家一個建議,一定要先說優點!不然跟我一樣入坑,死都不知道怎麼死的! 面試官:你用過哪些比較好的app,除了網易產品。 直接把路給堵死了,好狠心!我說“知乎”,還有...(我話都沒說話,就又開始問了) 面試官:我也經常用知乎,你說說知乎在體驗方面還有哪些改進? 我(Are you kidding me?我想了半天都沒想出來,因為我覺得體驗真的很好啊,跟網易雲音樂一樣):...... 面試官:是不是體驗很好,覺得沒有什麼改進的地方? 我:尷尬而不失禮貌的點了點頭 面試官:我發現你的研究生時間大部分都在實習,說說你實習的這兩家公司各有什麼特點?對你的成長幫助最大的地方在哪?要說具體的 我(果真HR個個都是人精!):根據自己實情出發 面試官:為什麼要讀研?讀研給你最大的收穫是什麼? 我(終於來了個正常的問題):因為balabala,正當我要說出我的閃光點的時候,她又打斷我了! 面試官:你還有什麼問題要問我的嗎? 我(內心OS:...認慫):......

面完靜等結果,七個工作日反饋。

這一整天基本都花在了網易面試上了,也因此錯過了微眾的線上筆試,但是還有一場美的的線上筆試,於是稍作休息後駕車去往離住的地方最近的一家星巴克,買了杯咖啡,在裡面完成了美的的線上筆試,結束後,在商場逛了下,找了一家店,終於吃上了飯,那時已晚上21:10分,很多店都關門了。

也就是說,18號這一天過的充實、忙碌、飢餓、期盼、焦慮、疲憊。

也就是那晚,我失眠到凌晨五點,就是因為擔心網易的面試結果...

也因此希望會有一個好的結果...但是我知道那是不可能的,因為網易畢竟是網易,我只是普通一本的小碩,與那些985/211高校沒多少競爭力,也明白我在前端這塊,我還不夠熟練,知識掌握的還不夠,加油吧。

為了能得到更美好的東西,必須使自己更加優秀,不管對人還是對事。