【乾貨分享】前端面試知識點錦集04(Others篇)——附答案

4、Others部分

技術類

一、http狀態碼有哪些?分別表明是什麼意思?

(1)、成功2×× 成功處理了請求的狀態碼。
200 服務器已成功處理了請求並提供了請求的網頁。
204 服務器成功處理了請求,但沒有返回任何內容。
(2)、重定向3×× 每次請求中使用重定向不要超過 5 次。
301 請求的網頁已永久移動到新位置。當URLs發生變化時,使用301代碼。 搜索引擎索引中保存新的URL。
302 請求的網頁臨時移動到新位置。搜索引擎索引中保存原來的URL。
304 若是網頁自請求者上次請求後沒有更新,則用304代碼告訴搜索引擎機器 人,可節省帶寬和開銷。
(3)、客戶端錯誤4×× 表示請求可能出錯,妨礙了服務器的處理。
400 服務器不理解請求的語法。
403 服務器拒絕請求。
404 服務器找不到請求的網頁。服務器上不存在的網頁常常會返回此代碼。
410 請求的資源永久刪除後,服務器返回此響應。該代碼與 404(未找到)代碼類似,但在資源之前存在而如今不存在的狀況下,有時用來替代404 代碼。若是資源已永久刪除,應當使用 301 指定資源的新位置。
(4)、服務器錯誤5×× 表示服務器在處理請求時發生內部錯誤。這些錯誤多是服務器自己的錯誤,而不是請求出錯。
500 服務器遇到錯誤,沒法完成請求。
503 服務器目前沒法使用(因爲超載或停機維護)。一般,這只是暫時狀態。javascript

二、說說建立ajax的過程

(1)、建立XMLHttpRequest對象,也就是建立一個異步調用對象.
(2)、建立一個新的HTTP請求,並指定該HTTP請求的方法、URL及驗證信息.
(3)、設置響應HTTP請求狀態變化的函數.
(4)、發送HTTP請求.
(5)、獲取異步調用返回的數據.
(6)、使用JavaScript和DOM實現局部刷新.css

三、一個頁面從輸入 URL 到頁面加載顯示完成,這個過程當中都發生了什麼?

分爲4個步驟:
(1)、當發送一個URL請求時,無論這個URL是Web頁面的URL仍是Web頁面上每一個資源的URL,瀏覽器都會開啓一個線程來處理這個請求,同時在遠程DNS服務器上啓動一個DNS查詢。這能使瀏覽器得到請求對應的IP地址。
(2)、瀏覽器與遠程Web服務器經過TCP三次握手協商來創建一個TCP/IP鏈接。該握手包括一個同步報文,一個同步-應答報文和一個應答報文,這三個報文在 瀏覽器和服務器之間傳遞。該握手首先由客戶端嘗試創建起通訊,然後服務器應答並接受客戶端的請求,最後由客戶端發出該請求已經被接受的報文。
(3)、一旦TCP/IP鏈接創建,瀏覽器會經過該鏈接向遠程服務器發送HTTP的GET請求。遠程服務器找到資源並使用HTTP響應返回該資源,值爲200的HTTP響應狀態表示一個正確的響應。
(4)、此時,Web服務器提供資源服務,客戶端開始下載資源。html

四、說說你對網站重構的理解?

網站重構:在不改變外部行爲的前提下,簡化結構、添加可讀性,而在網站前端保持一致的行爲。也就是說是在不改變UI的狀況下,對網站進行優化,在擴展的同時保持一致的UI。
對於傳統的網站來講重構一般是:
(1)、表格(table)佈局改成DIV+CSS
(2)、使網站前端兼容於現代瀏覽器(針對於不合規範的CSS、如對IE6有效的)
(3)、對於移動平臺的優化
(4)、針對於SEO進行優化
(5)、深層次的網站重構應該考慮的方面
(6)、減小代碼間的耦合
(7)、讓代碼保持彈性
(8)、嚴格按規範編寫代碼
(9)、設計可擴展的API
(10)、代替舊有的框架、語言(如VB)
(11)、加強用戶體驗
(12)、一般來講對於速度的優化也包含在重構中
(13)、壓縮JS、CSS、image等前端資源(一般是由服務器來解決)
(14)、程序的性能優化(如數據讀寫)
(15)、採用CDN來加速資源加載
(16)、對於JS DOM的優化
(17)、HTTP服務器的文件緩存前端

五、網頁驗證碼是幹嗎的,是爲了解決什麼安全問題。

a、區分用戶是計算機仍是人的公共全自動程序。能夠防止惡意破解密碼、刷票、論壇灌水;
b、有效防止黑客對某一個特定註冊用戶用特定程序暴力破解方式進行不斷的登錄嘗試。java

六、請說出三種減小頁面加載時間的方法。

(1)、優化圖片
(2)、圖像格式的選擇(GIF:提供的顏色較少,可用在一些對顏色要求不高的地方)
(3)、優化CSS(壓縮合並css,如margin-top,margin-left...)
(4)、網址後加斜槓(如www.campr.com/目錄,會判斷這個「目錄是什麼文件類型,或者是目錄。)
(5)、標明高度和寬度(若是瀏覽器沒有找到這兩個參數,它須要一邊下載圖片一邊計算大小,若是圖片不少,瀏覽器須要不斷地調整頁面。這不但影響速度,也影響瀏覽體驗。 當瀏覽器知道了高度和寬度參數後,即便圖片暫時沒法顯示,頁面上也會騰出圖片的空位,而後繼續加載後面的內容。從而加載時間快了,瀏覽體驗也更好了。)
(6)、減小http請求(合併文件,合併圖片)。git

七、你有用過哪些前端性能優化的方案?

(1)、提高頁面靜態資源加載速度
a、減小http請求
b、壓縮靜態資源文件大小,減小文件體積大小
(2)、加快頁面的渲染展現速度
a、css和js文件的位置
b、規範img標籤的使用
c、精簡頁面標籤,減小dom元素
d、規範css代碼程序員

八、說說什麼是SQL注入?如何防止SQL注入?

就是經過把`SQL`命令插入到`Web`表單遞交或輸入域名或頁面請求的查詢字符串,最終達到欺騙服務器執行惡意的SQL命令。
總的來講有如下幾點:
a、永遠不要信任用戶的輸入,要對用戶的輸入進行校驗,能夠經過正則表達式,或限制長度,對單引號和雙"-"進行轉換等。
b、永遠不要使用動態拼裝SQL,能夠使用參數化的SQL或者直接使用存儲過程進行數據查詢存取。
c、永遠不要使用管理員權限的數據庫鏈接,爲每一個應用使用單獨的權限有限的數據庫鏈接。
d、不要把機密信息明文存放,請加密或者hash掉密碼和敏感的信息。github

九、說說XSS的原理及防範?

XXS原理
Xss(cross-site scripting)攻擊指的是攻擊者往Web頁面裏插入惡意`html`標籤或者javascript代碼。好比:攻擊者在論壇中放一個
看似安全的連接,騙取用戶點擊後,竊取cookie中的用戶私密信息;或者攻擊者在論壇中加一個惡意表單,
當用戶提交表單的時候,卻把信息傳送到攻擊者的服務器中,而不是用戶本來覺得的信任站點。
XSS防範方法
(1)、代碼裏對用戶輸入的地方和變量都須要仔細檢查長度和對"<"、"">"、";"、"’"等字符作過濾;其次任何內容寫到頁面以前都必須加以`encode`,避免不當心把`html tag 弄出來。這一個層面作好,至少能夠堵住超過一半的XSS攻擊。
(2)、避免直接在cookie`中泄露用戶隱私,例如email、密碼等等。
(3)、經過使cookie和系統ip 綁定來下降cookie 。泄露後的危險。這樣攻擊者獲得的cookie沒有實際價值,不可能拿來重放。
(4)、儘可能採用POST而非GET提交表單面試

十、XSS與CSRF有什麼區別嗎?如何作到CSRF的防護?

XSS是獲取信息,不須要提早知道其餘用戶頁面的代碼和數據包。CSRF是代替用戶完成指定的動做,須要知道其餘用戶頁面的代碼和數據包。
要完成一次CSRF攻擊,受害者必須依次完成兩個步驟:
a、登陸受信任網站A,並在本地生成Cookie。
b、在不登出A的狀況下,訪問危險網站B。
CSRF的防護
a、服務端的CSRF方式方法不少樣,但總的思想都是一致的,就是在客戶端頁面增長僞隨機數。
b、使用驗證碼ajax

十一、什麼是 "use strict"? 使用它的好處和壞處分別是什麼?

ECMAscript 5添加了第二種運行模式:"嚴格模式"(strict mode)。顧名思義,這種模式使得`Javascript`在更嚴格的條件下運行。
設立"嚴格模式"的目的,主要有如下幾個:
- 消除Javascript語法的一些不合理、不嚴謹之處,減小一些怪異行爲;
- 消除代碼運行的一些不安全之處,保證代碼運行的安全;
- 提升編譯器效率,增長運行速度;
- 爲將來新版本的Javascript作好鋪墊。
注:通過測試`IE6,7,8,9`均不支持嚴格模式。
缺點:
如今網站的`JS` 都會進行壓縮,一些文件用了嚴格模式,而另外一些沒有。這時這些原本是嚴格模式的文件,被merge 後,這個串就到了文件的中間,不只沒有指示嚴格模式,反而在壓縮後浪費了字節。

十二、eval是作什麼的?

它的功能是把對應的字符串解析成JS代碼並運行;
應該避免使用eval,不安全,很是耗性能(2次,一次解析成js語句,一次執行)。

1三、說說使用AJax有哪些好處和有哪些壞處?

ajax的優勢
a、經過異步模式,提高了用戶體驗
b、優化了瀏覽器和服務器之間的傳輸,減小沒必要要的數據往返,減小了帶寬佔用
c、Ajax在客戶端運行,承擔了一部分原本由服務器承擔的工做,減小了大用戶量下的服務器負載。
d、Ajax的最大的特色
Ajax能夠實現動態不刷新(局部刷新)
readyState屬性 狀態 有5個可取值: 0=未初始化 ,1=啓動 2=發送,3=接收,4=完成
ajax的缺點
a、ajax不支持瀏覽器back按鈕。
b、安全問題 AJAX暴露了與服務器交互的細節。
c、對搜索引擎的支持比較弱。
d、破壞了程序的異常機制。
e、不容易調試。

1四、說說TCP傳輸的三次握手策略?

a、爲了準確無誤地把數據送達目標處,TCP協議採用了三次握手策略。用TCP協議把數據包送出去後,TCP不會對傳送 後的狀況置之不理,它必定會向對方確認是否成功送達。握手過程當中使用了TCP的標誌:SYN和ACK。
b、發送端首先發送一個帶SYN標誌的數據包給對方。接收端收到後,回傳一個帶有SYN/ACK標誌的數據包以示傳達確認信息。最後,發送端再回傳一個帶ACK標誌的數據包,表明「握手」結束
c、若在握手過程當中某個階段莫名中斷,TCP協議會再次以相同的順序發送相同的數據包。

1五、談談你對性能優化問題的理解?

代碼層面:避免使用css表達式,避免使用高級選擇器,通配選擇器。
緩存利用:緩存Ajax,使用CDN,使用外部js和css文件以便緩存,添加Expires頭,服務端配置Etag,減小DNS查找等
請求數量:合併樣式和腳本,使用css圖片精靈,初始首屏以外的圖片資源按需加載,靜態資源延遲加載。
請求帶寬:壓縮文件,開啓GZIP

1六、HTTP request報文結構是怎樣的?

(1)、請求報文介紹一個HTTP請求報文由請求行(request line)、請求頭部(header)、空行和請求數據4個部分組成。

下圖給出了請求報文的通常格式。

a、請求行
請求行由請求方法字段、URL字段和HTTP協議版本字段3個字段組成,它們用空格分隔。例如,GET /index.html
HTTP/1.1。
HTTP協議的請求方法有GET、POST、HEAD、PUT、DELETE、OPTIONS、TRACE、CONNECT。這裏介紹最經常使用的GET方法和POST方法。
GET:當客戶端要從服務器中讀取文檔時,使用GET方法。GET方法要求服務器將URL定位的資源放在響應報文的數據部分,回送給客戶端。使用GET方法時,請求參數和對應的值附加在URL後面,利用一個問號(「?」)表明URL的結尾與請求參數的開始,傳遞參數長度受限制。例如,/index.jsp?id=100&op=bind。
POST:當客戶端給服務器提供信息較多時能夠使用POST方法。POST方法將請求參數封裝在HTTP請求數據中,以名稱/值的形式出現,能夠傳輸大量數據。
b、請求頭部
請求頭部由關鍵字/值對組成,每行一對,關鍵字和值用英文冒號「:」分隔。請求頭部通知服務器有關於客戶端請求的信息,典型的請求頭有:
User-Agent:產生請求的瀏覽器類型。
Accept:客戶端可識別的內容類型列表。
Host:請求的主機名,容許多個域名同處一個IP地址,即虛擬主機。
c、空行
最後一個請求頭以後是一個空行,發送回車符和換行符,通知服務器如下再也不有請求頭。
d、請求數據
請求數據不在GET方法中使用,而是在POST方法中使用。POST方法適用於須要客戶填寫表單的場合。與請求數據相關的最常使用的請求頭是Content-Type和Content-Length。
(2)詳細解說
HTTP請求由三部分組成,分別是:請求行、消息報頭、請求正文。
請求行以一個方法符號開頭,以空格分開,後面跟着請求的URI和協議的版本,格式以下:
Method Request-URI HTTP-Version CRLF。
其中 Method表示請求方法;Request-URI是一個統一資源標識符;HTTP-Version表示請求的HTTP協議版本;CRLF表示回車和換行(除了做爲結尾的CRLF外,不容許出現單獨的CR或LF字符)。
請求方法(全部方法全爲大寫)有多種,各個方法的解釋以下。
GET:請求獲取Request-URI所標識的資源。
POST:在Request-URI所標識的資源後附加新的數據。
HEAD:請求獲取由Request-URI所標識的資源的響應消息報頭。
PUT:請求服務器存儲一個資源,並用Request-URI做爲其標識。
Delete:請求服務器刪除Request-URI所標識的資源。
TRACE:請求服務器回送收到的請求信息,主要用於測試或診斷。
CONNECT:保留未來使用。
OPTIONS:請求查詢服務器的性能,或者查詢與資源相關的選項和需求。
方法名稱是區分大小寫的。當某個請求所針對的資源不支持對應的請求方法的時候,服務器應當返回狀態碼405(Method Not Allowed);當服務器不認識或者不支持對應的請求方法的時候,應當返回狀態碼501(Not Implemented)。HTTP服務器至少應該實現GET和HEAD方法,其餘方法都是可選的。固然,全部的方法支持的實現都應當符合下述方法各自的語義定義。此外,除了上述方法,特定的HTTP服務器還可以擴展自定義的方法。
(3)、HTTP響應報文
HTTP響應也由三個部分組成,分別是:狀態行、消息報頭、響應正文。
狀態行格式以下:
HTTP-Version Status-Code Reason-Phrase CRLF
其中,HTTP-Version表示服務器HTTP協議的版本;Status-Code表示服務器發回的響應狀態代碼;Reason-Phrase表示狀態代碼的文本描述。狀態代碼由三位數字組成,第一個數字定義了響應的類別,且有五種可能取值。
1xx:指示信息--表示請求已接收,繼續處理。
2xx:成功--表示請求已被成功接收、理解、接受。
3xx:重定向--要完成請求必須進行更進一步的操做。
4xx:客戶端錯誤--請求有語法錯誤或請求沒法實現。
5xx:服務器端錯誤--服務器未能實現合法的請求。
常見狀態代碼、狀態描述的說明以下。
200 OK:客戶端請求成功。
400 Bad Request:客戶端請求有語法錯誤,不能被服務器所理解。
401 Unauthorized:請求未經受權,這個狀態代碼必須和WWW-Authenticate報頭域一塊兒使用。
403 Forbidden:服務器收到請求,可是拒絕提供服務。
404 Not Found:請求資源不存在,舉個例子:輸入了錯誤的URL。
500 Internal Server Error:服務器發生不可預期的錯誤。
503 Server Unavailable:服務器當前不能處理客戶端的請求,一段時間後可能恢復正常,舉個例子:HTTP/1.1 200
OK(CRLF)。

1七、說說網站前端網頁優化的14條原則是什麼?

(1)、減小HTTP請求次數
(3)、使用CDN(Content Delivery Network,內容分發網絡)
(3)、增長Expires Header
(4)、壓縮頁面元素
(5)、把樣式表放在頭上
(6)、把腳本文件放在底部
(7)、避免CSS表達式
(8)、把JavaScript和CSS放到外部文件中
(9)、減小DNS查詢次數
(10)、最小化JavaScript代碼
(11)、避免重定向
(12)、刪除重複的腳本文件
(13)、配置ETags
(14)、緩存Ajax

1八、說說你對MVC的理解?

(1)、概念
MVC是三個單詞的縮寫,分別爲: 模型(Model),視圖(View) 和控制Controller)。 MVC模式的目的就是實現Web系統的職能分工。 Model層實現系統中的業務邏輯,一般能夠用JavaBean或EJB來實現。 View層用於與用戶的交互,一般用JSP來實現。 Controller層是Model與View之間溝通的橋樑,它能夠分派用戶的請求並選擇恰當的視圖以用於顯示,同時它也能夠解釋用戶的輸入並將它們映 射爲模型層可執行的操做。

(2)、MVC如何工做
MVC是一個設計模式,它強制性的使應用程序的輸入、處理和輸出分開。使用MVC應用程序被分紅三個核心部件:模型、視圖、控制器。它們各自處理本身的任務。
a、視圖
視圖是用戶看到並與之交互的界面。對老式的Web應用程序來講,視圖就是由HTML元素組成的界面,在新式的Web應用程序中,HTML依舊在視圖中扮 演着重要的角色,但一些新的技術已層出不窮,它們包括Macromedia Flash和象XHTML,XML/XSL,WML等一些標識語言和Web services.   如何處理應用程序的界面變得愈來愈有挑戰性。MVC一個大的好處是它能爲你的應用程序處理不少不一樣的視圖。在視圖中其實沒有真正的處理髮生,無論這些數據是聯機存儲的仍是一個僱員列表,做爲視圖來說,它只是做爲一種輸出數據並容許用戶操縱的方式。
b、模型
模型表示企業數據和業務規則。在MVC的三個部件中,模型擁有最多的處理任務。例如它可能用象EJBs和ColdFusion Components這樣的構件對象來處理數據庫。被模型返回的數據是中立的,就是說模型與數據格式無關,這樣一個模型能爲多個視圖提供數據。因爲應用於模型的代碼只需寫一次就能夠被多個視圖重用,因此減小了代碼的重複性。
c、控制器
控制器接受用戶的輸入並調用模型和視圖去完成用戶的需求。因此當單擊Web頁面中的超連接和發送HTML表單時,控制器自己不輸出任何東西和作任何處理。它只是接收請求並決定調用哪一個模型構件去處理請求,而後再肯定用哪一個視圖來顯示返回的數據。

(3)、MVC的優勢
a、低耦合性
b、高重用性和可適用性
c、較低的生命週期成本
d、快速的部署
e、可維護性
f、有利於軟件工程化管理
(4)、MVC的缺點
a、因爲它沒有明確的定義,因此徹底理解MVC並非很容易。使用MVC須要精心的計劃,因爲它的內部原理比較複雜,因此須要花費一些時間去思考。   
b、你將不得不花費至關可觀的時間去考慮如何將MVC運用到你的應用程序,同時因爲模型和視圖要嚴格的分離,這樣也給調試應用程序帶來了必定的困難。每一個構件在使用以前都須要通過完全的測試。一旦你的構件通過了測試,你就能夠毫無顧忌的重用它們了。   
c、根據開發者經驗,因爲開發者將一個應用程序分紅了三個部件,因此使用MVC同時也意味着你將要管理比之前更多的文件,這一點是顯而易見的。這樣好像咱們的工做量增長了,可是請記住這比起它所能帶給咱們的好處是不值一提。   MVC並不適合小型甚至中等規模的應用程序,花費大量時間將MVC應用到規模並非很大的應用程序一般會得不償失。   
d、MVC設計模式是一個很好建立軟件的 途徑,它所提倡的一些原則,像內容和顯示互相分離可能比較好理解。可是若是你要隔離模型、視圖和控制器的構件,你可能須要從新思考你的應用程序,尤爲是應 用程序的構架方面。若是你肯接受MVC,而且有能力應付它所帶來的額外的工做和複雜性,MVC將會使你的軟件在健壯性,代碼重用和結構方面上一個新的臺 階。

1九、若是網頁內容須要支持多語言,你會怎麼作?

解答方向:在設計和開發多語言網站時,有哪些問題你必需要考慮

編碼使用UTF-8,空間域名須要支持多瀏覽地址,準備多套模板。
在設計和開發多語言網站時,須要考慮
- 應用字符集的選擇
- 語言書寫習慣&導航結構
- 數據庫驅動型網站
- css 盒子會由於內容尺寸不同出現不對齊偏移

20、如何優化網頁的打印樣式?

<link rel="stylesheet" type="text/css" media="screen" href="xxx.css" />

其中media指定的屬性就是設備,顯示器上就是screen,打印機則是print,電視是tv,投影儀是projection。

<link rel="stylesheet" type="text/css" media="print" href="yyy.css" />

但打印樣式表也應有些注意事項:
a、打印樣式表中最好不要用背景圖片,由於打印機不能打印CSS中的背景。如要顯示圖片,請使用html插入到頁面中。
b、最好不要使用像素做爲單位,由於打印樣式表要打印出來的會是實物,因此建議使用pt和cm。
c、隱藏掉沒必要要的內容。(`@print div{display:none;}`)
d、打印樣式表中最好少用浮動屬性,由於它們會消失。
若是想要知道打印樣式表的效果如何,直接在瀏覽器上選擇打印預覽就能夠了。

2一、說說你對哈希表的認識?

散列表(Hash table,也叫哈希表),是根據關鍵碼值(Key value)而直接進行訪問的數據結構。也就是說,它經過把關鍵碼值映射到表中一個位置來訪問記錄,以加快查找的速度。這個映射函數叫作散列函數,存放記錄的數組叫作散列表。
給定表M,存在函數f(key),對任意給定的關鍵字值key,代入函數後若能獲得包含該關鍵字的記錄在表中的地址,則稱表M爲哈希(Hash)表,函數f(key)爲哈希(Hash) 函數。
a、若關鍵字爲k,則其值存放在f(k)的存儲位置上。由此,不需比較即可直接取得所查記錄。稱這個對應關係f爲散列函數,按這個思想創建的表爲散列表。
b、對不一樣的關鍵字可能獲得同一散列地址,即k1≠k2,而f(k1)=f(k2),這種現象稱爲碰撞(英語:Collision)。具備相同函數值的關鍵字對該散列函數來講稱作同義詞。綜上所述,根據散列函數f(k)和處理碰撞的方法將一組關鍵字映射到一個有限的連續的地址集(區間)上,並以關鍵字在地址集中的「像」做爲記錄在表中的存儲位置,這種表便稱爲散列表,這一映射過程稱爲散列造表或散列,所得的存儲位置稱散列地址。
c、若對於關鍵字集合中的任一個關鍵字,經散列函數映象到地址集合中任何一個地址的機率是相等的,則稱此類散列函數爲均勻散列函數(Uniform Hash function),這就是使關鍵字通過散列函數獲得一個「隨機的地址」,從而減小碰撞。

2二、什麼是Etag?

瀏覽器下載組件的時候,會將它們存儲到瀏覽器緩存中。若是須要再次獲取相同的組件,瀏覽器將檢查組件的緩存時間,假如已通過期,那麼瀏覽器將發送一個條件GET請求到服務器,服務器判斷緩存還有效,則發送一個304響應,告訴瀏覽器能夠重用緩存組件。
那麼服務器是根據什麼判斷緩存是否還有效呢?答案有兩種方式,一種是前面提到的ETag,另外一種是根據Last-Modified。

2三、說說棧和隊列的區別?

a、棧的插入和刪除操做都是在一端進行的,而隊列的操做倒是在兩端進行的。
隊列先進先出,棧先進後出。
b、棧只容許在表尾一端進行插入和刪除,而隊列只容許在表尾一端進行插入,在表頭一端進行刪除

2四、說說棧和堆的區別?

棧區(stack)由編譯器自動分配釋放 ,存放函數的參數值,局部變量的值等。
堆區(heap) 通常由程序員分配釋放, 若程序員不釋放,程序結束時可能由OS回收。
堆(數據結構):堆能夠被當作是一棵樹,如:堆排序;
棧(數據結構):一種先進後出的數據結構。

2五、關於Http 2.0 你知道多少?

HTTP/2引入了"服務端推(serverpush)"的概念,它容許服務端在客戶端須要數據以前就主動地將數據發送到客戶端緩存中,從而提升性能。
HTTP/2提供更多的加密支持
HTTP/2使用多路技術,容許多個消息在一個鏈接上同時交差。
它增長了頭壓縮(header compression),所以即便很是小的請求,其請求和響應的header都只會佔用很小比例的帶寬。

非技術類

一、對前端界面工程師這個職位是怎樣理解的?它的前景會怎麼樣?

前端是最貼近用戶的程序員,比後端、數據庫、產品經理、運營、安全都近。
理解:
(1)、實現界面交互
(2)、提高用戶體驗
(3)、有了Node.js,前端能夠實現服務端的一些事情
(4)、參與項目,快速高質量完成實現效果圖,精確到1px;
(5)、與團隊成員,UI設計,產品經理的溝通;
(6)、作好的頁面結構,頁面重構和用戶體驗;
(7)、處理hack,兼容、寫出優美的代碼格式;
(8)、針對服務器的優化、擁抱最新前端技術。

前景:
前端是最貼近用戶的程序員,前端的能力就是能讓產品從 90分進化到 100 分,甚至更好,所以的前端工程師這個職位是愈來愈受歡迎的,前端的前景也會也來越來好。

二、若是經過此次面試咱們錄用了你,但工做一段時間卻發現你根本不適合這個職位,你怎麼辦?

回答提示:一段時間發現工做不適合我,有兩種狀況:
一、若是你確實熱愛這個職業,那你就要不斷學習,虛心向領導和同事學習業務知識和處事經驗,瞭解這個職業的精神內涵和職業要求,力爭減小差距;
二、你以爲這個職業無關緊要,那仍是趁早換個職業,去發現適合你的,你熱愛的職業,那樣你的發展前途也會大點,對單位和我的都有好處。

三、若是讓你招聘一位新員工,你絕得你會最看重對方哪方面的資源?

答 : 最看重招聘的人對現有團隊產生的影響是積極的仍是消極的。但願招的人能彌補現有團隊的不足或者讓團隊變得更強大,不但願招的人同團隊格格不入影響團隊的創業氛圍。

四、平時如何管理你的項目?

a、先期團隊必須肯定好全局樣式(globe.css),編碼模式(utf-8) 等;
b、編寫習慣必須一致(例如都是採用繼承式的寫法,單樣式都寫成一行);
c、標註樣式編寫人,各模塊都及時標註(標註關鍵樣式調用的地方);
d、頁面進行標註(例如 頁面 模塊 開始和結束);
e、CSS跟HTML 分文件夾並行存放,命名都得統一(例如style.css);
f、JS 分文件夾存放 命名以該JS功能爲準的英文翻譯。
g、圖片採用整合的 images.png png8 格式文件使用 h、儘可能整合在一塊兒使用方便未來的管理

五、說說你在將來的工做中處理事情的態度是什麼?

一次只處理一件事情,專一於一件事,效率和質量都有保障。因此同時作超過一件事,看上去效率高,實際上可能須要返工或作修補工做,從一個長期來看,不如一次只作一件事的效率高,質量有保障。

六、你有什麼愛好啊?有空的時候喜歡作什麼?

問題分析: 面試官詢問申請人的業餘愛好, 其一是爲了製造和諧氣氛, 其二是想經過申請人的喜愛判斷一下他的個性。
普通回答: 我特別喜歡打籃球, 由於打籃球可以培養一種團隊精神。
點評: 這明顯是一個「失真」的回答。一我的喜歡打籃球, 絕對不是爲了鍛鍊團隊精神!若是對一個簡單的問題進行「上綱上線」式的回答, 面試官會以爲這個申請人不夠真誠。
回答示範1: 我很是喜歡游泳, 原來基本上天天都遊, 如今找工做時間比較緊, 一個星期只能遊幾回了。
點評: 這是一個很是真實的回答, 申請人的口氣也比較放鬆。不過, 吹毛求疵地說, 你們必定會更喜歡如下的兩個示範性回答。
回答示範2: 個人愛好還挺多的, 小時候爸媽逼着拉琴, 過了八級, 不過上大學之後不常拉琴了, 喜歡羣體活動, 踢足球!我技術比較臭, 只能打後衛, 有時候連後衛都打不上, 就去守大門。幸虧大門的位置常常是爲我敞開的, 呵呵.
點評2: 這是個聽起來讓人會心一笑的答案, 很誠實, 很可愛。申請人在準備面試的時候, 不妨多設計一些此類略帶幽默色彩的答案, 它們會讓面試官更加喜歡你。
回答示範3: 說實話, 我沒有一個特別明顯的愛好, 有朋友來的時候去打打保齡唱唱K, 一我的的時候看看電視、 在網上聊聊天什麼的。平時工做特別忙, 很難發展一個特別的愛好, 呵呵。
點評3: 真誠的溝通, 可以迅速引發面試官的共鳴, 極可能面試官也在過着如出一轍的忙碌生活。並且, 這樣的回答也暗示了一些積極的因素: 隨和的個性、 習慣於繁忙的工做。

七、請給咱們談談你本身的一些狀況?

回答:簡要的描述你的相關工做經歷以及你的一些特徵,包括與人相處的能力和我的的性格特徵。若是你一會兒不可以肯定面試者到底須要什麼樣的內容,你能夠這樣說:「有沒有什麼您特別感興趣的範圍?」
點評:企業以此來判斷是否應該聘用你。經過你的談論,能夠看出你想的是如何爲公司效力仍是那些會影響工做的我的問題。固然,還能夠知道你的一些背景。

八、請談一下你對公司的見解,爲何你想來公司工做?

回答:可根據你先前對該公司的情報收集,敘述一下你對公司的瞭解。適當的對公司的聲譽、產品和發展狀況予以讚美。還能夠提提你爲了瞭解公司的狀況所作的努力而後就說你很是喜歡這個工做,並且你的能力也很是適合並能勝任這份工做。
點評:此問目的測試一下你對公司的瞭解和喜歡的程度,看看你的能力是否符合公司的要求和方向。看看你是真正地願意爲公司效力,仍是僅僅衝着公司的福利、聲望和工做的穩定。

九、你認爲對你來講如今找一份工做是否是不太容易,或者你很須要這份工做?

回答:
a、是的。
b、我看不見得。
點評:
通常按a回答,一切便大功告成。
有些同窗爲了顯示本身的「不卑不亢「,強調我的尊嚴,故按2回答。結果,用人單位打消了錄用該生的念頭,理由是:「此人比較傲「一句話,斷送了該生一次較好的就業機會。

十、請你談談對我單位的見解?

回答:我對貴單位還沒什麼瞭解,故談不出見解
點評:象這樣的回答,通常面試不成功多,如你很想進入該單位,就不妨實地去單位「偵察」一番,或收集有關的資料。若有一位畢業生,他有意去國家進出口銀行工做,便經過朋友的關係弄到了一本進出口銀行的基本業務材料,從而在面試中對答如流,贏得了招聘單位的賞識。並能以自身的優點來講明爲什麼應聘這工做,作到有的防矢,給主考官留下了深入的印象。所以,收集資料,瞭解單位,能夠幫助求職者認清主要方向,更精確,更客觀地審視主聘單位,選擇適合本身發展的單位,避免走彎路。

十一、以你的資歷條件,徹底能夠到大公司任職,你怎麼想到咱們小企業?

回答:
a、哎,沒辦法,一時沒有應聘到大企業,何況,畢業時間又到了,不然只能回當地就業,所以先就業再說。
b、小企業有他本身的優點,在用人方面很是重視,本身雖然資歷條件尚可,我想,在大家這樣的企業更能發揮本身的做用。
點評:一個還未工做就想之後跳槽的員工,是不管如何不能期望他全力以赴的幹好工做的,所以,即便有此想法,也不能說出來,說不定工做後受到企業重用,本人的做用也發揮的特別好,而不想再走了呢?

十二、你爲何但願到咱們公司工做?

回答:我以爲貴公司力量雄厚,領導得力,上下一心,適於一切有才幹的人發展。
忌:「我是學電子的,我到這裏纔是專業對口。」看狀況而定。
  「我來這裏上班離家近。」
  「我喜歡大家這兒。」
  「據說大家公司月薪較高。」
點評:回答問題要從對方入題,引發對方好感,使對方感到你能尊重,關心公司的須要,願爲公司盡微薄之力。

1三、若是本公司錄用你,你最但願在哪一個部門工做?

回答:
忌:「到哪一個部門都行」
應:「本人但願到XX部門,但也很樂意接受公司的其餘安排。
點評:不要說得太隨意,太確定。比較穩妥的辦法是首先代表本身的志向和興趣,再表示服從安排。

1四、你願意被外派工做嗎?你願意常常出差嗎?

回答:願意,反正我無牽無掛,到哪兒工做均可以。
點評:這是主試者經過提問來透露他要找的是什麼樣的人,此信息已經很明白地告訴你,他所期待的回答是什麼。對於此類問題應聘者留意傾聽。從「話中之話」中找出應試者實際須要的線索。

1五、我怎樣相信對這個職位你是最好的人選呢?

回答:根據這個職位的性質和咱們剛纔的談話,我推斷你須要的是工做積極的人,可以設定目標,不害怕挑戰的人。我就具備這些品質,讓我再告訴你一些我在校時的經歷,它們能說明我確實是你所須要的最好的人選。
點評:設身處地替面試官想想,考慮一下招聘者須要什麼樣的人,你又在哪些方面符合他們的要求。根據要求,談出本身應聘的優點。

1六、你對咱們公司有多少了解?

回答:
a、徹底不瞭解。
b、由於對貴公司有關方面至關有興趣,因此纔來應聘.
點評:若回答a那就沒有必要再說下去了,但錄用的機會也就小了。最好的回答是b,這是公司想測試應聘者對公司的興趣,關注程度,之後進公司工做的意願的問題,所以,最好要稍稍記住公司的簡介內容和招聘人事廣告內容。

1七、你談談選擇這份工做的動機?

回答:「這個職位恰好是個人專業對口,能把學的書本知識在實踐中更好地應用。」
「我雖然學的專業與這職位有區別,但我對這方面的能力較強,相信本身能幹好這份工做。
點評:這是測試面試者對這份工做的理解程度及熱忱,並篩選因一時興起而來應聘的人。

1八、你家在外地,咱們單位無住宿,你如何看待呢?

回答:家在外地,貴單位無住宿條件,這些都不影響我來應聘貴公司,住宿我能夠本身解決,無須單位操心,我看重貴公司的發展前途。
點評:不要由於我的生活上的小問題,而錯失良機。主試者也想看看你對困難的見解,自信心程度。

1九、說說最近最流行的一些東西吧?常去哪些網站?

Node.js、Mongodb、npm、MVVM、MEAN、three.js,React ,Angular.js。
網站:w3cfuns,sf,hacknews,CSDN,慕課,博客園,InfoQ,w3cplus等

20、咱們不限定固定職位,你認爲本身最適合作什麼?

回答:
忌:「公司安排我作什麼就作什麼!」太隨意。
「理想的職位就是有機會讓我一展專長,爲公司的發展貢獻本身的學識。」太空。
應:我學的是XX專業,我認爲XX職位比較適合我。
點評:主試者問你問題,就是想要一個明確的答案,且明確的回答給人以有思想、有主見、有活力的印象。象上面的回答,是犯了一個錯誤,然而幾乎每一個人都會犯一樣的錯誤,他們老是說本身幹什麼均可以。所以,回答這樣的問題,乾脆用本身的內心話表白,實事求是,至少讓主試者聽起來感到舒服些。

2一、你但願從事什麼樣的工做?

回答:根據貴公司的招聘職位,我認爲**職位可能比較適合我,有利於個人能力的發揮。固然,其餘有些職位也是可作的,人貴在學習。
點評:應試者能夠應聘的職位做出大體的設想,讓主試人瞭解本身的抱負與努力方向。因爲每一個單位都有本身的人事政策,其工做安排未必能徹底與求職者的願望相一致,尤爲對一個初出茅廬的大學生來講,從基層作起,從小事作起也是應該的。可是,又不能隨便回答:「到哪裏工做均可以。」這讓人以爲像在「乞討工做」,被人看輕。因此要掌握分寸。

2二、你爲何要應聘咱們公司?

回答:看了貴公司的廣告及要求,感到本身比較符合公司的招聘條件,另外,對貴公司也有些瞭解,本身若能有幸成爲貴公司的一員,是能有助於本身能力的發揮與發展的。
點評:這樣的回答,可顯示出本身積極進取的態度。在談論用人單位時,態度要誠懇、謙和。不論大單位或小單位,都有其優勝和劣勢,應試者應視其實際狀況,提出本身的看法,不要牽強附會,若是一味往對方臉上貼金,反而會使人反感。

2三、你在之前實習的公司從事什麼樣的工做?

回答:在具體說明對工做的理解程度和熟悉度時,回答要領有三個方面:擔任的工做內容、職務、成績三項。
點評:這個問題可讓公司知道面試者是否符合所要招聘的職位,之前在其餘公司的職位是否重要,來判斷應聘者的發展可能。

2四、爲什麼辭去原來的工做?

回答:工做地點離家較遠,路上花費時間多,發生交通問題時,影響工做。貴公司的工做崗位更適合本身專業(個性)的發展。
點評:爲了不應聘者以相同的緣由辭職,公司儘可能能作到對這方面緣由的瞭解,有助於創造一個良好的工做環境和人際氛圍。所以,應聘者最好說出對方能信服的理由。若是本身確有缺點,要說出「將盡可能克服本身缺點」,做爲有信心改變這類狀況的答覆。

2五、請問你有什麼樣的工做觀?

回答:我認爲工做是爲了實現本身的人生價值,發揮本身的最大潛能,解決本身的生活問題。
點評:此話是問工做在你的生活中意味着什麼?爲什麼而工做?從工做中獲得了什麼?幾年後想變成怎樣等。所以,別把它想得太複雜,可根據本身的具體狀況回答。

2六、你是否能夠接受加班?

回答:我願意接受挑戰。在本身責任範圍內的工做,不能算是加班。
點評:這是面試者針對應聘者的工做熱忱而提的問題,因無理的加班不必定是好的。

2七、你在學校裏學了哪些課程?這些課程對所應聘的工做有些什麼幫助?

回答:回答時只要將所學過的重要課程以及與所應聘的工做崗位有關的課程說出來就好了,沒必要把每一門課程都羅列出來。可稍爲詳細地介紹一下與應聘崗位有關的科目。
點評:不要強調所學科目會對從此的工做會有極大的做用,只着重強調打好了理論和技能基礎。

2八、你的學習成績如何?

回答:
「較好。」
「通常。」我在學校裏除課堂上學習的知識外,比較喜歡擴充本身的其餘方面的知識,對XX類的書也看了很多。
點評:對本身的學習成績必定要如實回答。若是成績優秀,應該用平和的口氣,實事求是地介紹,決不可自我炫耀,讓人以爲輕浮;若是成績很差則應說明理由,或者哪門課程很差,隱瞞或欺騙,只會暴露本身的不良品行。總之,應表現出對學習的態度是認真的,努力的,對成績又看得比較客觀。這樣即便你的成績不太理想,主試人的反應也不會太強烈。

2九、請談一談你的弱點?

回答:
我是一個完美主義者,老是追求事物天衣無縫。
我對準時要求得很是嚴格。
我從不輕易放棄,以致有些執拗。
我喜歡獨立工做,而不喜歡主管領導在個人工做中安排一切。
點評:通常的策略是說出一些表面上是弱點,實際上倒是優勢的特徵。當你在敘述我的弱點時,要可以說出過去的具體相關事例,來講明你的觀點。這點很是重要。固然,你也能夠說一個你明顯的缺點,而後舉出例子說明你是怎樣克服這個缺點的。此問是主試者看看你是否是因爲缺乏某種經驗、訓練,甚至因爲某些性格弱點而不能勝任工做。

30、請談談你的優勢?

回答:我很是喜歡和藹於學習新東西,在工做中有責任心,真誠,有熱情,有靈活性,可以合理地安排時間使工做有條理、有效率,可以在緊張壓力下工做等等。
點評:以上回答要有具體實例來證實你的說法。優勢除了你的工做技能、具備的各種證書和實踐經驗外,主試者要想聽的優勢不見得是你最突出的優勢,而應該是和你應聘的那份工做相關的優勢,從中找出僱傭你的理由,同時能夠知道你對本身的瞭解程度,看看你對本身有沒有自信,以及你到底適合不適合這份工做。所以,你要精確地描述,不可泛泛說些無心義的話,例如,適應力強,具備幽默感,合羣等等。

3一、你對本公司(或這份工做)有什麼見解嗎?

回答:我對貴公司(或這份工做)很感興趣,很樂意在公司裏發揮本身的潛能,我也相信以本身積極的心態,努力工做,在貴公司我會得以發展的。
點評:考官問這個問題的真正目的想要了解你能作這份工做嗎?你在這公司工做安心嗎?若你感到沒有準備的話,你最好先說:「讓我想一下」而後深呼吸放鬆,再作回答,這有助於增長你在回答問題時的自信。

3二、你爲何要離開前一家單位?

回答:事實上,離開原來的單位對我來講是比較痛苦的選擇,由於我在那裏工做了x年以後(一段時間),與那裏的領導和同事相處的很是好,同時,經過個人努力,也取得了你們的信任,你們不肯我離開。可是,我心中一直但願本身在xx領域內有所發展,因爲客觀緣由,在前面的單位裏一直沒能實現這個願望,因此我仍是作出了這個選擇,離開前一個單位。
點評:這個問題看起來較爲簡單,但回答要注意。你回答的若是不合適,對方就可能產生這樣的想法,離開前一個單位是否是你不得已而爲之,問題在你我的,你會由於一樣或者相似的緣由離開咱們?所以,要避免過多的抱怨前一僱主。要強調本身我的發展須要的緣由,不要歸咎於別人。要讓聘方相信,你在原單位也是工做出色,人際關係良好,可是爲了你我的的某種理想和追求,你願意到新公司工做。

3三、你有能力勝任應聘的職位嗎?

回答:沒問題!這雖然較難,可是我會想辦法作好的!對我來講這是一個新的挑戰,我相信可以打敗它。
忌:「對不起,我缺少經驗,可能作很差吧?」「一我的作,恐怕我如今不行」
若是聽到這種毫無生氣與活力的話時,天然會在失望之餘產生一種想法:「也許他是一個缺少能力與自信的人吧!「
點評:掌握好謙虛的度,實在是一個大有學問的問題。中國的傳統教育老是教導人們處事要謙虛,這方面的古訓不少,「滿招損,謙受益」;長此以往。一方面想出人頭地,一方面又自覺不自覺的受這種思想的左右,不敢大膽的發表本身的意見,禮讓過頭,貶低本身。這種虛僞的過謙,特別在應聘外企中很不合時宜。每每弊大於利,拔苗助長。做爲一個企業,理所固然的選擇自信敬業的人。

3四、在工做中你怎樣看待錯誤?

回答:
a、我儘可能不出錯誤
b、我並不擔憂本身會出錯,但我能作到不重複一樣的一個錯誤。
點評:對回答a的公司沒有錄用。
人非聖賢,熟能無過?錯誤是必不可少的,但關鍵是要能很快地吸收經驗教訓,總結經驗。求職也如此,不要懼怕失敗,你應緊緊記住:「失敗乃成功之母!」「失敗是成功的踏腳石。」通往成功的路從不平坦,跌卻是不免的,可是,跌倒了並非失敗,真正的失敗是跌倒了怕不起來了。」

3五、你的計算機能力如何?

回答:若是你這方面能力較差的話,你就應該告訴他們你的計算機能力較爲欠缺,可是你目前還在繼續學習計算機。
若是能力強的話,就可直接告訴他們你所獲得的高級或中級編程員證書,及計算機的其餘能力。
點評:遇到的問題屬於本身的長處,也不要洋洋灑灑,口若懸河。對方問到本身的短處,不要避而不談,或者轉移話題,其實每個人即便是很是優秀的人都會有本身的弱點,這種狀況下應該正面回答對方的問題,同時若是本身認爲這是一個欠缺而又是對方的招聘條件的話,應該積極表示本身如今的或者即將的行動用來克服這方面的缺點。

3六、你的外語水平如何?

回答:若是你水平高的話,對方又是懂外語的面試官你能夠直接用外語進行回答你外語所具有的能力,獲得的證書或託福的考分,以表示你的能力。但表示還不夠,還需努力繼續學習。
若你的水平較低,就應如實回答,講出低的緣由,如筆頭翻譯不差,口語聽力稍差,或專業詞彙較熟悉,人文詞彙掌握較少等。並表示你目前還在學習。
點評:遇到的問題屬於本身的長處,也不要洋洋灑灑,口若懸河。對方問到本身的短處,不要避而不談,或者轉移話題,其實每個人即便是很是優秀的人都會有本身的弱點,這種狀況下應該正面回答對方的問題,同時若是本身認爲這是一個欠缺而又是對方的招聘條件的話,應該積極表示本身如今的或者即將的行動用來克服這方面的缺點。

3七、你從此打算是什麼?

回答:「我但願我可以在這個公司里長久地工做。根據本身的能力和表現,不斷地增長工做中所擔負的責任。」
點評:看看你真正想要獲得的是什麼,以斷定你是否會長期在公司工做。明確你的我的目標和公司是否一致。

3八、你爲何想要換工做?

回答:「我想進一步發揮個人能力」,或「我目前單位的發展機會很是有限。」
點評:這個問題是判斷你的動機,和你處理問題的能力。切記,不要抱怨你過去或目前的僱主。

3九、談一談你在過去工做中生活中遇到的問題,以及如何解決?

回答:舉一個你在過去的工做中或生活中遇到的問題,說明你是如何解決該問題的。
點評:判斷你對問題的分析能力,看看你有沒有團隊精神和克服困難的信心。這也是給你一個表現自個人機會。

40、請談一下你指望的月薪要求?

回答:若是我能到貴公司工做,這將是我跨出校門,第一次走上社會工做,我相信我本身的能力,若是能受聘這個職位我必定會很是努力的工做,所以每個月xxxx元的工資是我我的的要求,但我更關心的是能找到一份工做來充分發揮我我的的能力。
點評:實際上用人單位決定錄用你時,對你的待遇其實已基本肯定。特別在一些國企跨國大公司中,對大學生的工資待遇公司都有了相關規定的,但也不是絕對不可更改的。此問也是面試者爲了瞭解你對本身的估價。所以對月薪不能要求太高,但也要合理。若是你以爲單位給你的月薪偏低,能夠將你的關注告訴單位。你要讓單位以爲你是在同他們商議,而不是要挾。重點放在你關注的緣由上。好比,你要租房、車費、生活費等基本開銷或探親等,但願單位算一下你的基本生活開銷,那麼效果會比簡單地說你要多少多少工資要來得好些。

4一、請問你還有問題要問嗎?

回答:回答這個問題,大有學問。首先,你能夠將你在面試中尚未機會提出的相關問題提出來。其次,進一步強調一下你在面試過程當中沒有機會談到的我的優點。若是實在沒有什麼能夠說的,也不要說沒有問題。你能夠問面試者下一次的面試(若是有的話)是什麼時間?或者問面試者何時能夠獲得結果,以及何時能夠打電話給他。若是你肯定獲得這份工做,這個時候你就應該對面試者這麼說:「我很想獲得這份工做。我認爲我徹底可以勝任這份工做。請給我這個機會。」最後,對面試者表示致謝,握手,告別。
點評:此問通常當面試者要結束面試時,經常會問的問題。

4二、請你自我介紹一下?

  思路:
  (1)、這是面試的必考題目。
  (2)、介紹內容要與我的簡歷相一致。
  (3)、表述方式上儘可能口語化。
  (4)、要切中要害,不談無關、無用的內容。
  (5)、條理要清晰,層次要分明。
  (6)、事先最好以文字的形式寫好背熟。

4三、你的座右銘是什麼?

  思路:
  (1)、座右銘能在必定程度上反映應聘者的性格、觀念、心態,這是面試官問這個問題的主要緣由。
  (2)、不宜說那些醫引發很差聯想的座右銘。
  (3)、不宜說那些太抽象的座右銘。
  (4)、不宜說太長的座右銘。
  (5)、座右銘最好能反映出本身某種優秀品質。
  (6)、 參考答案——「只爲成功找方法,不爲失敗找藉口」

4四、能談談你將來3,5年給本身的職業規劃嗎?

我想成爲這個領域的專業化人士,但我明白這是一個長期努力的過程,如今個人初步打算是:第一階段,我但願從如今開始,1-2年以內可以在我目前申請的這個職位上沉澱下來,積累最起碼的工做經驗,把基礎打牢;第二階段,我但願利用3-5年的時間,成爲一個在本身的專業方面可以獨當一面的人,可以獨自承擔責任,發現問題,解決問題,不讓上司操心;第三階段,成爲該領域的一名專業化人士,在工做中能有創新與發展,能爲公司帶來更大的價值。

4五、你認爲怎樣纔是全端工程師(Full Stack developer)

我想我應該算是一個全棧型工程師了,行業經驗已經超過10年。獨立作過很多產品,也帶過很多項目,通過的產品包括桌面端、Web產品、移動端產品,Web端涵蓋前端與後端,移動端主要作iOS和混合開發。
a、熟悉Web前端,對MVC/模塊化開發有實戰經驗,熟悉CoffeeScript、Grunt、RequireJS、Handlebars等等,本身寫太小型的Javascript框架,一個項目中的JS代碼超過一萬行。熟知網頁優化,知道如何讓網頁變得更加快速。也略懂SEO,知道什麼樣的URL和代碼會更討好Spider。
b、熟悉Node.js,有幾個項目都是基於Node.js的,目前發佈有開源的Blog程序Purelog,在NPM上有多個模塊發佈。熟悉混合開發,過去我曾經有超過一年的時間是在研究Hybrid技術,多個App基於混合開發技術,也有開發相似於PhoneGap的解決方案。對HTML5在手機上的表現頗爲熟悉,挖過不少的技術坑,如白屏問題,Sqlite問題,滾動條問題,硬件動畫加速、點擊延時問題等等。
c、會作設計,熟悉Photoshop,全部的產品無論是Logo仍是界面全都是本身作的設計,雖然在資深的設計師眼裏不值一提,但在工程師隊伍中算是比較另類了。
d、熟悉Objective-C,有兩年以上的iOS開發經驗,在App Store上有約十款App。熟悉服務器的通常性操做,本身有VPS並運行多個網站,雖然配置服務器常常要去Google。

4六、介紹一個你最得意的做品吧?

思路:這個問題要具體問題具體分析,你能夠從這些方面去回答,好比說詳細介紹一下你本身獨立開發過什麼插件、作過什麼項目,用到了什麼技術,這個插件實用性和擴展性怎麼樣,你把你的項目開源到github網站,獲得了不少人的承認等等。

4七、項目中遇到什麼問題?如何解決?

思路:這個問題要具體問題具體分析,好比說開發插件的時候遇到過一些技術問題而你並不瞭解這些技術問題,而後你是經過什麼方式解決的。這個過程面試官容易看出來你在遇到困難時如何解決問題的能力,好比說上google查資料,詢問你的同事,去一些論壇求助等,這個要根據你的實際狀況回答。 

4八、你在如今的團隊處於什麼樣的角色起到了什麼明顯的做用?

思路:好比說我在如今的團隊中是一個項目組的組員,負責項目的某個模塊的內容,這個模塊在整個項目起着相當重要的做用,因此我要盡心盡責的把這個模塊作到更好,不拖團隊的後腿等等。。

4九、假如分配給你一項任務,只有要求完成時間,沒有任何歷史文檔或相關資料,請問你要怎麼着手進行?

思路:我首先會詳細的分析這項任務的需求,好比說要實現什麼功能,要使用什麼技術,難點在哪裏,我該如何解決這些難點問題,考慮清楚後,而後就開始上網查找相關的資料素材,分好步驟,並開始着手進行。

50、你能爲咱們作什麼?

思路:
a、 基本原則上「投其所好」。
b、 回答這個問題前應聘者最好能「先發制人」,瞭解招聘單位期待這個職位所能發揮的做用。
c、 應聘者能夠根據本身的瞭解,結合本身在專業領域的優點來回答這個問題

5一、內容還會不斷補充。。。

博客數據來源聲明:
本博客大部分數據來源於各大網站的收集整理改編,主要有GitHub(https://github.com)、題來了(http://www.tilaile.com)、牛客網(https://www.nowcoder.com)、一些英文網站,還有一些論壇、博客、IT招聘等網站。還有少部分數據時來源於本人本身整理添加,添加的內容主要是本人認爲比較重要知識點,面試時可能會問到的題目,本身整理題目以及參考答案,答案僅供參考,答案可能存有錯誤或不足,歡迎你們批評指正或補充更好的答案。好讓我及時更正,以避免誤導其餘人。本博客僅提供參考做用。

相關文章
相關標籤/搜索