面試問答
closure、hoist、scope、code by value/reference、event loop概念
以下提供解答思路
...
面試官主要有3位: ReactJS技術主管、JS技術主管、PM
流程依序為:
一、 自我介紹(自傳、工作經歷)
二
、 作品簡介、操作環節(請選擇一個個人認為最好、最能代表你個人能力的作品即可,多說無益)
三、 問答與實作,大致範圍是
1. JS基本概念即時問答,包含: closure、hoist、scope、code by value/reference、event loop等
2. React.js的CodeSandBox實作,包含:
* fetch資料的時候顯示loading UI。
* 承上一題,如何實踐: 三種loading UI,每次fetch資料的時候顯示不同loading UI。
* LifeCycle問題
四、與PM確認工作開發流程與福利薪資討論、面試者提問。
面試問答
closure、hoist、scope、code by value/reference、event loop概念
以下提供解答思路
clouser: 核心方面可以往函式封裝、變數保存去想
hoist: 分兩個方向去討論即可,即函式、變數宣告,然後關於變數宣告的提升機制、原理可以深究探討
scope: 從global、function、block scope三方向去剖析,可以順便待出scope chain概念會更好
code by value/reference: primative value以及object reference的值傳差異性
event loop: 從Stack、Queue、Heap、Web API幾個面向去探討,再解釋同步/異步待碼的處理邏輯程序
React.js的CodeSandBox實作
以下提供思路方向:
Q1: fetch資料的時候顯示loading UI。
ans: (蠻基礎的自己想想吧~)
Q2: 承上一題,如何實踐: 三種loading UI,每次fetch資料的時候顯示不同loading UI。
ans: array管理三個UI → Math.floor()、Math.rendom()、array.length隨機抽取...
Q3: LifeCycle問題
ans: 這題的關鍵在於你對於Render時機的理解,只要有觀念,基本上不太容易答錯,就不洩題了:p
面試建議
作品展示的時候一定要選擇最能夠展示自己實力的作品來說,個人原本想先講一個近期作品+代表作品,我也明確表明我的介紹順序了,但講完第一個就被面試官卡掉了,同時因為近期作品內容稍為簡單了點,可能就被人認為"只會這些",所以一定要直接從你的最得意作品來講!
同時,記得回答問題的時候盡量自信一點,不會就誠實說不會,不需要硬猜,因為面試官都會問你"為什麼這麼想",然後答題盡量簡單扼要、直戳核心概念,不需要過度舉例,核心概念有點出來,基本上面試官就知道你想表達什麼了(我就那個說太多被嫌的...)
最後在工作、福利、薪水、報到日談論環節請務必拿出你的積極性。
祝 面試順利!