2017年五月前端面試題目的總結

憤怒的葡萄發表於2019-02-16

持續心累的找工作階段算是結束了,不同公司對面試的知識側重點不同,整體的感受就是:大公司可能更偏向一些JS基礎或者原理、html佈局、一些經典演算法方面。小公司的面試更加側重對經驗和細節的把握,或者說是偏向於解決問題層面的比如說給你一個場景用你的一些想法來解決問題。
現將我在面試過程遇到的問題總結下。目前先傳題目答案整理好之後再發布出來。

html、css

1.CSS中絕對定位和相對定位的文件流是怎樣的 以及他們是如何使用的?
2.margin、padding屬性值存在一個 兩個 三個 四個的情況下分別對應是什麼意思?
3.盒模型你的理解是什麼? 還有他們存在的位置分別是哪裡?
4.清除浮動的方法 你知道有幾種?
5.水平居中,垂直水平居中你知道有幾種方法?
6.CSS3中canvas svg的區別 還有新增加的偽類 請列舉出來
7.px em rem的區別 ?
8.link和 @import 的區別是?
9.關於相容IE8 你都經歷過哪些坑?
10.關於圖片方面你有什麼樣的優化經驗?
11.關於手機端你遇見過哪些相容問題?
12.關於HTML5 CSS3的新特性
13.css如何引用外部字型
14.關於響應式佈局和自適應佈局你的理解是什麼?
15.關於css sprites你是如何使用的?
16.行內元素,塊級元素有哪些?
17.display:none; visiable:hidden區別?
18.瀏覽器都有哪些核心?
19.CSS有哪些屬性可以繼承? 內聯元素和!important 那個優先順序高?
20.如何居中一個浮動元素?
21.HTML5文件型別需要在頭部寫什麼?
22.block元素的特點是什麼? inline? inline-block?
23.常用的儲存方式?
24.請你設計一個佈局 要求一個寬度為200px長度無限的div 讓它居於瀏覽器頁面最左端,畢
竟固定不動,div右面請完成一個響應式的佈局方式
25.關於盒子寬度是如何計算的?

js

1.根據場景請手寫相關程式碼來解決(現場寫程式碼,虛擬碼和思路不算)問題:

公司舉辦了一場比賽,共有100張照片,並且有10個評委進行打分,分數為1-100。
其中打分規則為去掉一個最高分,去掉一個最低分 然後剩下的取平均分作為最後得分。
每張照片及相關資訊已經存入陣列resultArray中,結構如下: resultArray=    
[{"pic":"p1", "score":[90,100,87,98.....]},.....]   
其中pic為照片名稱標識,score為照片的評分情況 請您程式設計出相應的程式碼來解決問題,
並且最後得分的格式為: p1 得分 80 /n p2 得分 100.

2.請用js實現 “i am student” 轉換為 “student am i” (請不要寫虛擬碼和思路)。
3.為array 本地物件增加一個原型方法,它作用於刪除陣列條目中重複的條目(可能多個)返回值是一個包含被刪除的重複條目的新陣列。
4.== === null undefined區別 ? typeof null typeof undefined 分別輸出什麼?
5.判斷物件是否為string的方法? 以及基本資料型別和引用型別分別有什麼?
6.以下程式碼輸出結果是什麼 ? var a=2; var func=(function () {var a =3; return function() {a++; alert(a);}})();
7.什麼是閉包? 原型? 作用?
8.如何阻止事件冒泡和預設事件?
9.JS新增DOM節點?
10.請用JS實現階乘?
11.如何根據給的一段url來擷取相應的值?
12.關於事件委託?
13.請寫出折半查詢?氣泡排序?(這個問題叫我直接在面試公司電腦上寫,不要求一定編譯成功).
14.列舉你知道的物件設計模式?以及他們的差異性?
15.取消頁面快取的方法你知道哪些?
16.JS 上下文?
17.ES5 ES6有哪些新特性?
18.你對this有什麼樣的理解?
19.說一說你經常用的陣列方法? 字串方法?
20.settimeout是如何實現的?
21.關於堆記憶體和棧記憶體?
22.instanceof 是做什麼的?
23.說下你對繼承的看法?

框架和其他


1.JS同步非同步的原理?
2.vue單頁模式 以及 父子元件如何相互傳值? 兄弟元件呢?
3.webpack相關基礎知識
4.gulp相關基礎知識
5.ajax如何做到的非同步載入?有缺點嗎?ajax請求過程?
6.關於lazyload或者視覺化載入?
7.vue中,如果不使用vue-router 你要如何進行做到元件間資料互動?
8.promise是做什麼用的?以及用法?
9.vue的生命週期?
10.ajax如何避免重複傳送? ajax如何避免阻塞?
11.一次HTTP請求的過程是什麼樣的?狀態碼?
12.tcp udp有什麼區別?
13.常用跨域方式?
14.談談你對前端工程師的理解?
15.談談你對前端模組化的理解?
16.談談如何進行效能的優化?還有你知道時間複雜度和空間複雜度嗎?二叉樹?總之就是一些演算法的基本概念 問的時候沒有深入 估計要是深入就得GG
17.記憶體洩漏是什麼?
18.ng1 和vue 有什麼區別? 以及他們的各自的優缺點?
19.談談你對NODE.js的理解?
20.最後一題說一個比較牛逼點的問題, JS是如何進行垃圾回收的?

暫時就記住了是這些 希望能給一些還在苦逼找工作的前端們一些幫助吧

相關文章