個人的面試經曆,見文章:2017年秋季校招前端面經(百度,騰訊,網易,華為,樂視等)
對面試中常見的問題,我也進行了彙總,并給出了答案:
前端面試筆試知識彙總1(含答案);
前端面試筆試知識彙總2(含答案);
前端面試筆試知識彙總3(含答案);
去哪兒:兩道簡答題,兩道程式設計題,蠻假單的。
簡答題:
1、事件綁定的方法;
2、将location.search轉化為對象的形式{};
滴滴:前面選擇題是計算機網絡,作業系統加前端的知識外加能力測評(智力和邏輯的)。
一道多選題:12個黑球,一個白球,每次數到13拿走一個;怎麼樣數能使最後留下來的是白球。
兩道程式設計題,隻過了一道;
最後是一個簡答題,網頁從打開到顯示,經曆了哪些過程
攜程:剛開始一部分是能力測評,就是各種邏輯推理題做得我很心碎啊。表示腦子有點不夠用,不知道是不是因為當時有點累的緣故。
第二部分是選擇題,單選和多選混在一起,涉及can apply,innerHTML,innerTEXT,xss(Cross-site scripting)csrf(Cross-site request forgery,跨站請求僞造”)。AMD,(ipone6)vh, px pt, em; css3的menu,command,adiuo,canvas含義。
1、做一個下拉框,可以編輯的,有10w條資料.邊滑動邊顯示。如何進行輸入比對,考慮算法的時間空間複雜度,盡可能高效。(這個不是一般的難啊.....)
2、水準垂直居中的方法。
3、常用的架構的優點
4、是一個js問題。
var bb=1; function aa(bb){bb=2;alert(bb)}; aa(bb);alert(bb).問最終的輸出結果是什麼(這個很簡單啊)
網易:網易這次的題目很良心啊。
程式設計題三個,但是都很簡單,半個小時全部搞定通過。
而且選擇題基本都是前端的,考的挺注重細節的,涉及很多js文法,題目很新穎啊。
最後是一個簡答題:關于cookie的設定,擷取和移除。
美團 (第一次):做了美團後端,完全不懂,不過還是把碰到的題目說下。
選擇題:程序之間的通信方法,session,cookies,Tcp, snmp, smtp,ftp 缺頁中斷,哪些設計模式與系統的擴充性關系,java中的concurrent,複雜度的計算。指令可以确定檔案的大小(ls,df,find, du)
主要涉及 機率論的排序,作業系統程序線程多線程,java程式的一些問題 equals 計算機網絡 ,資料庫一兩道,資料結構 (先序周遊 棧等)
美團 (第二次):還是後端。沒做完,後面直接關閉網頁,交卷都不想交了。
涉及資料庫(select語句速度),計算機網絡(TCP握手),作業系統(程序,記憶體,線程),java(false,繼承),資料結構(棧,紅黑樹,哈弗曼編碼,複雜度)
搜狗:
location.assign,打開一個新頁面方法,iframe中的js通信,
資料結構,java,c/C++三選一。 其中有一個簡答題10分,
兩道程式設計題。
騰訊:全部同一張試卷,就一個js題目........貌似還做錯了
選擇題單選多選混在一起。。。真要命.............
裡面有很多C++的指針,sizeof,enum,dns,路由彙聚,二叉樹知識,系統開銷,二分法,磁盤的最小機關等,磁盤最短查找路勁。
兩個程式設計題,兩個簡答題。
簡答題1:是網上一個面試題的改編,
簡答題2:是資料庫的設計
阿裡:總共11題,兩道程式設計題,一道是關于模闆渲染的
var str="<div all-for='key in list' {{key.a}}>{{key.a}}{{$index}}</div>";
var list=[{a:"tttt"},{a:"bbbb"}];
一道是判斷類型(string,number,error,regrex)
一道簡答題:關于混合app和原生app的差別
選擇題涉及css, nodejs, canvas, 96dpi, px pt rem em,cookies,Css3新特性
猿輔導:總共12道題目,60分鐘。
直接是研發大類同一張試卷,前端的一點東西都沒有。。。。直接跪啊
涉及機率論,作業系統,計算機網絡,兩道程式設計題,還有一個兩直線共線條件。。。。。。。
1、TCP擁塞機制
2、互斥鎖和信号量的差別
京東:選擇題30個,算法題2個,5個簡答題;120分鐘
選擇題涉及範圍很廣:算法,作業系統,liunix,前端等。
1、優雅降級和漸進增強;
2、圖檔輪播;(可以講原理或者代碼)
3、cookies,sessionStorage ,localStorage的差別;
4、盒模型,行内元素和塊級元素的概念
5、前端性能優化
兩道程式設計題:隻有你把平等看待java,c++和前端,也說明你不懂前端。。。。。。。
CVTE:25道選擇題,2道程式設計題;90分鐘
選擇題:資料庫,前端,計算機網絡;
1、圖檔輪播(完整代碼)
2、對日期的格式化處理;
途牛:20道選擇題,4道簡答題;時間90分鐘
選擇題:前端;
1、為什麼利用多個域名來存儲網絡資源會更有效?
2、文檔類型的作用是什麼?你知道多少種文檔類型?
3、請說出三種減低頁面加載時間的方法(加載時間指感覺的時間或者實際加載時間)
4、你能解釋一下JavaScript中的繼承是如何工作的嗎?
58筆試:
轉自:SHERO_Vae的部落格
1.填空題(30分,10題)
(1)擷取随機數的方法:________。
(2)JS中将一個變量強制改為浮點類型的方法:________。
(3)根據id擷取元素的原生JS方法:________。
(4)将文檔聲明為HTML5文檔類型,需要在文檔頭添加:________。
(5)Chrome浏覽器的私有樣式字首:________。
(6)CSS3設定圓角的屬性名:________。
(7)CSS中,#是根據________來選擇元素,.是根據________來選擇元素。
(8)form标簽特有的屬性請列舉三個:________、________、________。
(9)正規表達式中,$是什麼意思:________。
(10)typeof‘123’傳回:________。
2.簡答題(25分,5題)
(1)自定義一個浏覽器相容的事件綁定方法需要注意哪些問題?
(2)設計一個布局方案,使得頁面在pc端和pad端顯示為一行三列,在手機端為一列三行。
(3)請解釋JSONP的工作原理。
(4)display和position都有哪些值?分别列舉一下這些值的用途。
(5)位址欄輸入一個位址後,輸入回車,描述一下這時開始,浏覽器做了什麼。
3.應用題(25分,2題)
(1)建立一個JS類,模拟實作方法的重載。(15分)
(2)JS中也會有排序的需求,用JS實作一個标準的排序算法,對某個數字數組進行由低到高的排序。(10分)
4.程式設計題(20分,1題)
用html、css和js模拟實作一個下拉框,使得下拉框在各個浏覽器下的樣式和行為完全一緻。說出你的設計方案,并且重點說明功能設計時要考慮的因素。
樹林美麗、幽暗而深邃,但我有諾言尚待實作,還要奔行百裡方可沉睡。 -- 羅伯特·弗羅斯特