翻譯:瘋狂的技術宅
原文: https://www.indeed.com/hire/i...
本文首發微信公衆號:jingchengyideng
歡迎關注,天天都給你推送新鮮的前端技術文章javascript
無論你是面試官仍是求職者,裏面的思路都能讓你獲益匪淺。前端
這個問題用來評估基礎編碼知識。答案能夠有多種,因此應該注意傾聽具體的問題,並儘可能全面回答,來展現本身對單體應用與微服務架構的理解。java
設計單體架構在短時間內成本較低,但代碼在內存是單一的內聚單元。微服務架構提供了靈活性和可擴展性,由於每一個組件都是一個獨立的程序。程序員
異步編程容許多個併發操做,而且它很是適合 JavaScript 程序。這個問題評用來估求職者的編碼知識,以及對 JavaScript 的具體理解。面試
簡單來講,同步編程意味着代碼以線性方式執行。這些程序一般不能同時處理多個操做。使用異步編程,有一個事件循環。一個程序線程能夠處理多個操做。因爲 JavaScript 一般用於用戶界面,所以同時運行多個操做的能力能夠帶來更好的用戶體驗。編程
這個問題有助於瞭解求職者是否具備 JavaScript 經驗和專業知識。原型繼承比類繼承更容易、更靈活,這是判斷一個有經驗的 JavaScript 程序員的首選方法。segmentfault
當使用類繼承時,實例繼承自類,這會產生分層。而經過原型繼承,實例繼承自其餘對象,而且能夠從多個對象建立。我更喜歡原型繼承,由於它更簡單、更靈活。微信
求職者的答案能讓面試官深刻了解他們使用 JavaScript 的經歷。類繼承有意義的狀況不多,求職者可能會說根本沒有。 否認的答案優於對適當狀況冗長的描述,由於這些一般是基於錯誤信息的。架構
類繼承幾乎歷來都不是正確的解決方案。只有在極少數狀況下,它可能被用到。併發
函數式編程是目前 JavaScript 使用的基本原則。求職者是否可以完整的回答這個問題,能夠證實他們的基礎知識是否紮實。
函數式編程容許經過使用純函數來設計軟件。此方法避免了不少編程問題,如共享狀態,反作用和可變數據。它做爲面向對象編程的替代方案,其中應用狀態一般與對象中的方法搭配並共享。
任何具備 JavaScript 經驗的求職者都會使用其中一種風格,所以應該可以對每種風格的優缺點提出一些見解。這個問題能夠幫助面試官衡量求職者使用 JavaScript 的深度。
雖然我主要使用面向對象編程方式,可是我更但願用函數式編程開發。在用面向對象編程時遇到不一樣的組件競爭相同的資源的時候,更是如此。
這個問題可以說明求職者對 JavaScript 重要基本原則的深入理解。不熟悉這些條款的求職者可能沒有該職位所需的經驗。
當模型是單一事實來源時,會發生單向數據流,React 就是一個例子。雙向數據綁定是用戶界面與模型數據動態連接的狀態。若是用戶界面中的字段發生了變化,模型也會發生變化,好比 Angular。