轉(zhuǎn)眼人到中年:前端老程序員無(wú)法忘懷的一次百度電話面試
等待,山雨欲來(lái)
2010年9月22日,中秋,記得那天下著零星的小雨。大部分同學(xué)都已回了家,深秋的校園顯得格外空曠寂寥。平時(shí)車(chē)來(lái)人往的校道,也只剩三三兩兩的行人低著頭走著。
匆匆忙忙吃完早餐,一個(gè)人背著書(shū)包來(lái)到了教學(xué)樓,找了僻靜的角落坐下。看看手機(jī),8:45左右,離電話面試還有大概15分鐘。心里有些緊張,畢竟是大廠的面試,要求肯定很?chē)?yán)格,不知道待會(huì)會(huì)問(wèn)什么問(wèn)題。內(nèi)心突然有些懊惱,應(yīng)該提前多做些功課的。
如期而至的電話
時(shí)間一分一秒地流逝,心跳越來(lái)越快。9點(diǎn)整,上海的電話如期打來(lái)。雙方確認(rèn)了身份后,連自我介紹都不用,直接就進(jìn)入了技術(shù)面試環(huán)節(jié)。有點(diǎn)出乎意料,在我彼時(shí)的設(shè)想里,***個(gè)環(huán)節(jié)應(yīng)該是自我介紹才對(duì)。
沒(méi)有太多的時(shí)間去詫異,電話那頭,面試題一個(gè)接一個(gè)地拋了過(guò)來(lái)。我把耳機(jī)聽(tīng)筒緊緊地貼著耳朵,生怕聽(tīng)不清面試的題目,或者錯(cuò)過(guò)關(guān)鍵的信息。其時(shí),腦子飛快地轉(zhuǎn)著,想著如何回答面試官的題目,以及怎么更有條理地組織我的回答。
“JS是如何實(shí)現(xiàn)繼承的?”
“知不知道什么是跨域?什么情況下會(huì)出現(xiàn)跨域?有哪些解決方案?”
“說(shuō)說(shuō)你對(duì)標(biāo)簽語(yǔ)義化的了解。”
。。。
腦子里一直嗡嗡響,也不知道過(guò)了多長(zhǎng)時(shí)間,面試官突然安靜了下來(lái)。頓了大約有10秒,那邊說(shuō):“技術(shù)的問(wèn)題也問(wèn)得差不多了,就先到這里。你這邊有沒(méi)有什么問(wèn)題想問(wèn)的?”
我如釋重負(fù),趕緊喘了口氣,然后問(wèn)了幾個(gè)我之前已經(jīng)準(zhǔn)備好的問(wèn)題,包括面試部門(mén)的工作,員工培訓(xùn)機(jī)制,學(xué)習(xí)建議等,面試官也一一解答。
也許就要結(jié)束了
面試終于要結(jié)束了,一直緊繃著的神經(jīng)開(kāi)始松弛下來(lái),人反而緊張了起來(lái)。畢竟,后面還有生死未卜的兩周在等待著我,而未知總是讓人感到恐懼。
接下來(lái),就是我最想聽(tīng)到的那句收尾的話了。
面試官:“那么,面試就先到這里,今天是周末,一個(gè)多小時(shí)的面試,辛苦你啦。面試結(jié)果會(huì)在兩周之內(nèi)反饋到你這邊。”
周末,還是中秋,仔細(xì)想來(lái),也是為了遷就我的時(shí)間,面試官才不得不在這么特殊的時(shí)間到公司加班。而且面試過(guò)程中,面試官挺nice的,并不是預(yù)想中高高在上冷冰冰的態(tài)度。
面試官的“辛苦你啦”讓我有點(diǎn)小內(nèi)疚,趕緊回道:“挺不好意思的,因?yàn)槲疫@邊時(shí)間的原因,辛苦您周末過(guò)來(lái)公司加班。中秋節(jié)快樂(lè)。”
具體怎么說(shuō)的記不清了,只記得當(dāng)時(shí)態(tài)度很真誠(chéng),并不是因?yàn)榭吞住?/p>
面試官聽(tīng)到我的回答后,明顯楞了一下,似乎有些意外。同樣祝我節(jié)日快樂(lè)后,電話那頭安靜了一會(huì),只有偶爾輕輕的鍵盤(pán)敲擊聲。
當(dāng)幸福來(lái)敲門(mén)
感覺(jué)過(guò)了好長(zhǎng)時(shí)間,其實(shí)也可能只有十來(lái)秒。聽(tīng)筒里再次傳來(lái)面試官的聲音,不知道是不是心理作用,感覺(jué)面試官的語(yǔ)調(diào)跟之前有些不同。
“這樣,我提前把面試結(jié)果告訴你,你一面通過(guò)了。在你之前也面了好多人,到目前為止,你是回答得***的。二面具體時(shí)間稍后通知。加油哦,好好準(zhǔn)備下一輪面試。”
幸福來(lái)得太突然,感覺(jué)握著電話的手都在微微顫抖。
“非常感謝,我一定好好準(zhǔn)備。”
直到現(xiàn)在,我還不知道為什么面試官突然決定提前告訴我面試結(jié)果。也許,陌生面試者的一句“中秋節(jié)快樂(lè)”,觸動(dòng)了在他鄉(xiāng)拼搏的年輕游子的心。
一切無(wú)從求證,記憶也終將隨時(shí)間淡去,在那個(gè)下著蒙蒙細(xì)雨的清晨。
技術(shù)面的問(wèn)題
一個(gè)多小時(shí)的面試,問(wèn)了很多問(wèn)題,事后稍事整理記錄了下來(lái),主要是圍繞JavaScript展開(kāi)。
JS部分:
- JS是如何實(shí)現(xiàn)繼承的?
- object的prototype是什么?(接上一個(gè)問(wèn)題)
- JS如何實(shí)現(xiàn)數(shù)據(jù)以及功能的封裝。(即類(lèi)是如何實(shí)現(xiàn)的)
- 如果一個(gè)標(biāo)簽里面包含了10000個(gè)image,如何有效地對(duì)這10000個(gè)image實(shí)現(xiàn)事件綁定,比如說(shuō)click事件。(考察事件冒泡機(jī)制)
- 假設(shè)現(xiàn)在有對(duì)象A、B,A對(duì)象綁定了S事件,如何對(duì)B對(duì)象也綁定S事件?(其實(shí)不清楚)
- 如何實(shí)現(xiàn)跨域請(qǐng)求?你知道的有多少種方法?各有什么優(yōu)缺點(diǎn)?
- 當(dāng)使用隱藏框架實(shí)現(xiàn)跨域請(qǐng)求時(shí),如果框架頁(yè)跟當(dāng)前頁(yè)不屬于同個(gè)父域,是否可以實(shí)現(xiàn)跨域?
- 如何實(shí)現(xiàn)私有變量?說(shuō)出一種方法即可。
- 函數(shù)閉包使用得多嗎?什么情況下需要使用函數(shù)閉包?
- 當(dāng)某個(gè)事件發(fā)生時(shí),如果獲得事件發(fā)生的對(duì)象。(ff和ie不同)
- 當(dāng)綁定事件時(shí),this指針指向的是?
- 當(dāng)為document綁定事件時(shí),this指針指向的是?
- 發(fā)送ajax請(qǐng)求有多少個(gè)步驟?如何判定發(fā)送成功?(readyState和onreadystatechange)
- 表示請(qǐng)求成功返回的狀態(tài)碼是多少?你還知道哪些狀態(tài)碼?分別表示什么意思?
jQuery部分:
- jQuery里如何綁定事件?有多少種方式?
- jQuery綁定事件時(shí),this指針指向的是?(dom對(duì)象還是jQuery對(duì)象)
- 對(duì)于頁(yè)面中暫時(shí)不存在的對(duì)象,如果進(jìn)行事件綁定?
- 為什么選用jQuery框架(言下之意就是還有哪些其他的框架,各有什么優(yōu)缺點(diǎn),即你對(duì)比之后選擇的原因)
- 有沒(méi)有考慮過(guò)jQuery UI?如何對(duì)jQuery UI的樣式進(jìn)行定制?
- 有沒(méi)有自己寫(xiě)作jQuery插件(即如何寫(xiě)jQuery插件)
html+CSS:
- 用html+CSS實(shí)現(xiàn)這樣的布局效果,左欄固定寬度,右欄寬度自適應(yīng)并填滿(mǎn)剩下空間。
- 說(shuō)說(shuō)
<strong>標(biāo)簽和<b>標(biāo)簽的區(qū)別,如果讓你選擇,你會(huì)選擇使用哪個(gè)? - 說(shuō)說(shuō)你對(duì)對(duì)html標(biāo)簽語(yǔ)義化的理解。
后記:關(guān)于二面
大約一周后,接到了二面的電話。面試的結(jié)果有點(diǎn)出乎意料,那種驚訝,夾雜著莫名其妙的情緒,至今還無(wú)法忘懷。






















