March 24, 2020

junior 前端模擬面試:面試官心得

題目分享


文 / 西打藍 Siddharam

面試者反應與表現


應 AppWorks School 恩師之邀,來當一日的模擬前端面試官,我負責面試其中四位,每人有半小時時間,其中二十分鐘模擬面試,十分鐘回饋。

總體感覺,只有一位充滿自信,其他三位或多或少,都流露出焦慮與不自信。

某些題目,我故意出的很難,就是為了看到「不知道」答案時,他們會如何面對。是苦笑?積極?還是僵在現場?建議面試者要準備好回答不出來時的說詞。

此外,面試者還分成兩派,一派是熟悉 CSS,但 JS 不熟;另一派則反。而共通點是網路問題都不熟。

在介紹作品時,有位面試者描述的很有自信,也重點介紹作品「特點」,這讓我眼睛一亮。因為有些功能或套件,是連我也沒用過,這會讓我對專案印象深刻。

另外,我有出一則 async 考題,只有一位回答讓我滿意,因為他不是直接告訴我答案,而是正確地描述思路,讓我知道他不是猜對的。

雖然說了不少待改進的點,但大家的實力,其實都足以進入職場。進入職場後,在一點一滴把各種名詞弄懂就好。至少在我待的職場中,其疲憊程度仍低於學校,請各位放心。

面試考題


CSS:

1. 請排列以下選擇器權重:「!important」、「class」、「id」、「*」、「深度選擇器」

2. position 有哪些用法?relative、absolute 怎麼用?

3. 手機、平板、電腦的尺寸?

4. margin、padding、border 差異?

5. 偽元素和偽類有哪些?

6. 有用過 SCSS 什麼功能?

7. >>> 和 /deep/ 差別?


JS:

1. splice、slice 用法差別?還有用過哪些高階函式?

下列分別印出什麼?



const months = ['Jan', 'March', 'April', 'June']
months.splice(2, 1, 'May')
console.log(months)

const animals = ['ant', 'bison', 'camel', 'duck', 'elephant']
console.log(animals.slice(2))



2. 說明 promise 用法?好處是什麼?還有哪些 ES6 語法?

3. 知道 Async Await 嗎?

以下印出什麼?



function resolveAfter(x) {
    return new Promise(resolve => {
      setTimeout(() => {
        resolve(x);
      }, 2000);
    });
  }
  
  
  async function add1(x) {
    const a = await resolveAfter(20);
    const b = await resolveAfter(30);
    return x + a + b;
  }
  
  add1(10).then(v => {
    console.log(v); // 幾秒後印出? v?
  });



4. 有用過 WebSocket 嗎?前端使用 WebSockot,需傳給後端唯一 token 時,要怎麼做?

5. 有用過三元運算子嗎?

6. 有用過位元運算子嗎?

以下印出什麼?



console.log(9 << 2)
console.log(9 >> 2)



7. 說明一下如何使用閉包、閉包的好處?

以下印出什麼?



  function buyItem() {
    var myMoney = 1000;
    return function (price) {
      myMoney = myMoney - price;
      return myMoney;
    }
  }
  var balance = buyItem(); 
  balance(100);  // ?
  balance(100);  // ?
  balance(100);  // ?



8. 以下印出什麼?為何如此?如何解決?



console.log(0.1+0.2===0.3)



網路相關:

1. TCP / IP 是什麼?三項交握的目的是什麼?解釋一下三項交握?為什麼是三次而不是兩次、四次?當代的 SPA、非 SPA 網站,每次傳輸檔案都要建立一次 TCP / IP 連線嗎?

2. 說明 HTTP 做了什麼?

3. 知道 MVC 嗎?前端 MVC 和後端 MVC 差別?SPA 是什麼?好處與壞處?

4. 如何優化網站?請解釋 CDN。


個人:

1. 請自我介紹?

2. 介紹一下你的作品。

3. 寫程式有遇過什麼困難嗎?如何克服?




閱讀量




聯絡與合作


有文字採訪、網站開發,或是諮詢需求,皆可至個人網站參考作品,並聯繫 IG

或是想分享心情、聊聊天、交朋友,可以來秘密通道找我唷。

Email: frank@siddharam.com

訂閱: