2017年年初前端面試總結

MR_LP發表於2017-03-12

請各位讀者新增一下作者的微信公眾號,以後有新的文章,將在微信公眾號直接推送給各位,非常感謝。

2017年年初前端面試總結

##0.備註

若文章中部分內容圖片無法載入,請移步作者的其他部落格。

##1.前言


近期很多小夥伴們都已經開始新一輪的跳槽,而跳槽的計劃往往又因為面試的失利而被迫中止。

正好作者身邊最近就有很多小夥伴在嘗試跳槽。

那麼今天我們們就來分享一下,“戰友們”分享給我的第一手的面試資料吧。

本文是 作者:李鵬 原創文章,若想轉載,請私信作者並在轉載文章開頭附上原文地址連結。

未經允許私自轉載,作者保留法律追究權利。

##2.正文


###2.1 阿里巴巴

首先我們們來看一看,一位去阿里進行面試的小夥伴,看看他在面試中都遇到了什麼問題。

首先你先做個自我介紹吧。

這個沒什麼好說的,大家肯定都熟門熟套了,但是請注意接下來的內容。

這時候遞給我一張紙 和 筆,告訴我,接下來我問到的問題,都需要你直接手寫下來,如果問到一些方法,就直接用程式碼來展示。

WTF? 雖然我知道你是想考考我的“基礎功”,但是這個也太誇張了吧。

但是沒辦法,誰讓你是過來面試的呢,他怎麼說,你就怎麼做唄。

接下來就是重點了,面試官開始詢問具體的技術內容了。

  • 你上一個專案都用到了那些方法優化js的效能?
  • 說一下你對angualr的見解,說一下專案中你為什麼會用angular?
  • angular的生命週期?
  • 你個人認為為什麼那麼多人迷戀angular?
  • 說一下angular和jQ的區別?
  • 說一下你對vue和vuex的使用方法?
  • 手寫vue實現一個Vue的一個小效果,假如...(具體的朋友沒說全)?
  • 說一些什麼是高併發,這些如何處理?
  • 說一下什麼是物件導向?
  • 手寫程式碼實現 封裝繼承
  • 說一下你對多型的看法
  • 工作這麼長時間了,肯定懂後臺吧 ,什麼是 執行緒?
  • ES6你瞭解哪些?你對ES6有什麼看法?
  • 說一說關於 Promise 的使用(需要手寫)

總結:
基本上,在你說一句話中,只要提到專業術語,
他會立馬讓你說這個專業術語的意思
而且,只要你回答過以後,他還會要求你手寫程式碼並實現

###2.2 北京 ** 健康科技有限公司 機試題

各位小夥伴們請注意,這次這個公司並沒有像其他公司一樣,上來先做一套筆試題,而是上來給你一個需求,直接讓你完成對應的內容。

請通過ajax呼叫遠端介面獲取資料,實現如圖所示介面

2017年年初前端面試總結

  • 介面地址:
    • test.sifong.cn:3129/public/sfai…
    • 輸入引數為sParam: sParam為物件形式,採用URL引數方式
      • Key1=Value1&Key2=Value2&...
    • sParam具體內容:
      • guid=010C6FBE0AA14EE6BD61C97CC1E64DD5&method=3363
    • 輸出引數:為json資料格式
      • 成功返回:
        • Result=true,USERID=我的編號,PHOTO=我的照片,Value=資料列表
        • 資料每一項:TOPIC_ID=話題編號,CIRCLE_ID=圈子編號,CIRCLE_NAME=圈子名稱,TOPIC_CONTENT=話題內容,USERID=客戶編號,NICKNAME=暱稱,PHOTO=照片,CREATE_TIME=發表時間,COMMENT_TIMES=評論次數,LIKE_TIMES=點贊次數,SHARE_TIMES=分享次數,IS_LIKE=已點贊,[PIC_LIST=圖片列表],[CAN_DEL=可以刪除]
      • 失敗返回:
        • Result=false,Message=錯誤資訊,ErrCode=錯誤程式碼

其中:

其中,面試官給你講解完就直接出去了,直接給你留在屋子裡,讓你等你完成之後再找他。

比較好的一點就是可以請求場外支援。

當然,自己要開熱點。

###2.3 不記得具體是哪些公司的面試題分享

以下面試題無出處,無順序,各位小夥伴可以選擇性檢視。

####2.3.1 某不知名公司面試題

2017年年初前端面試總結

  • 當前一段程式碼輸出結果是什麼?
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <title>MR_LP -->  QQ :3206064928</title>
    </head>
    <body>

    </body>
    <script type="text/javascript" charset="utf-8">
        var z = 10;
        function foo(){
                console.log(z);
        }
        (function(funArg){
                var z = 20;
                funArg();
        })(foo);
    </script>
</html>複製程式碼
  • 當前一段程式碼輸出結果是什麼?
<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8" />
    <title>MR_LP -->  QQ :3206064928</title>
</head>
<body>

</body>
<script type="text/javascript" charset="utf-8">
    var data = [];
    for(var k = 0; k < 3; k++){
            data[k] = function(){
                console.log(k);
            };
    }
    data[0]();
    data[1]();
    data[2]();
</script>
</html>複製程式碼
  • 假設現有一篇文章,var content = "...大量文字"
    文章中觸及到一些敏感詞彙,如 ["習近平","周永康","中共","6.4"] 等內容。
    如何在文章中發現這些敏感詞,並將背景設定為紅色或者改變字型顏色並標示出來。

  • JQuery 中 $fn.extend 函式的實現(實現核心程式碼即可)

  • 設計基於觀察者模式的事件繫結機制

####2.3.2 另一個不知名的公司面試題

2017年年初前端面試總結

  • 列出 display 的值,並說明他們的作用

  • position 中,relative 和 absolute 的區別,包括使用時的注意事項和定位原點

  • CSS 選擇符有哪些?哪些屬性可以繼承?優先順序演算法如何計算?CSS 3 新增的偽類有哪些?

  • CSS 3 有哪些新特性?

  • new 操作符具體做了什麼?

  • 請問三行 a,b,c 輸出分別是什麼?

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8" />
    <title>MR_LP -->  QQ :3206064928</title>
</head>
<body>

</body>
<script type="text/javascript" charset="utf-8">
    function fun(n,o){
            console.log(o)
            return{
                fun:function(m){
                    return fun(m,n);
                }
            };
    }
    var a = fun(0); a.fun(1); a.fun(2); a.fun(3);
    var b = fun(0).fun(1).fun(2).fun(3);
    var c = fun(0).fun(1); c.fun(2); c.fun(3);
</script>
</html>複製程式碼
  • 問,輸出分別為什麼?
<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8" />
    <title>MR_LP -->  QQ :3206064928</title>
</head>
<body>

</body>
<script type="text/javascript" charset="utf-8">
    var a = 100;
    function testResult(){
            var b = 2 * a;
            var a = 200;
            var c = a / 2;
            alert(b);
            alert(c);
    }
    testResult();
</script>
</html>複製程式碼
  • 問輸出結果為什麼?
<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8" />
    <title>MR_LP -->  QQ :3206064928</title>
</head>
<body>

</body>
<script type="text/javascript" charset="utf-8">
    var tt = "MR_LP -->  QQ :3206064928";
    function test(){
            alert(tt);
            var tt = "李鵬";
            alert(tt);
    }
    test();
</script>
</html>複製程式碼

##3. 後記


不知不覺,就寫了這麼多了。

其他一些面試題,我們們稍後等作者專門開一篇專題,再詳細討論吧。

拜了個拜。

李鵬
2017年03月12日15:47:49

相關文章