前端常見面試題目錄整理@郝晨光

前言

由于最近在整理前端常見面試題,整理的文章標(biāo)題可能有些亂,導(dǎo)致后期不好查找,特此總結(jié)目錄,目錄會(huì)與面試題同步更新。

使用谷歌瀏覽器的可以根據(jù)關(guān)鍵字使用F3搜索功能進(jìn)行查找。


目錄

一、前端常見面試題 (一)@郝晨光

1. HTML5有哪些新特性?如何處理HTML5新標(biāo)簽的瀏覽器兼容問(wèn)題?如何區(qū)分HTML和HTML5?
2. css3中的transform有哪些屬性?分別用來(lái)實(shí)現(xiàn)什么效果?
3. localStorage、sessionStorage、cookie有什么區(qū)別?
4. 什么是同源策略?你都知道哪些解決跨域的方法?
5. 列舉JavaScript的基本數(shù)據(jù)類型和引用數(shù)據(jù)類型
6. Vue2.0的生命周期有哪些?分別解釋其意思
7. 詳述組件通信
8. 詳述導(dǎo)航守衛(wèi)
9. v-show和v-if有什么區(qū)別?及使用場(chǎng)景
10. v-for和v-if的優(yōu)先級(jí)



二、前端常見面試題(二)@郝晨光

1. Vue常用的指令
2. Vue常用修飾符
3. v-on可以監(jiān)聽多個(gè)方法嗎?
4. Vue中key值的作用
5. Vue組件中的data為什么必須是函數(shù)



三、前端常見面試題(三)@郝晨光

1. keep-alive組件的作用
2. 單頁(yè)面應(yīng)用和多頁(yè)面應(yīng)用區(qū)別及優(yōu)缺點(diǎn)
3. 什么是計(jì)算屬性?什么情況使用?
4. computed、methods的區(qū)別
5. 什么是自定義指令,有哪些鉤子函數(shù)及自定義指令的使用場(chǎng)景
6. 父組件獲取異步動(dòng)態(tài)數(shù)據(jù)傳遞給子組件,報(bào)錯(cuò)如何解決?
7. vue-router參數(shù)傳遞方法詳述及區(qū)別



四、前端常見面試題(四)@郝晨光

1. 什么是Vuex?詳述Vuex的工作流程
2. 詳述Vuex的核心屬性及使用
3. Vue和Jquery的區(qū)別
4. Vue中的slot是什么?
5. SPA首屏加載慢,該如何解決?



五、前端常見面試題(五)@郝晨光

1. 對(duì)MVC、MVP、MVVM的理解
2. 談?wù)剬?duì)$nextTick的理解及使用場(chǎng)景
3. 漸進(jìn)式框架的理解
4. 組件樣式屬性 scoped 問(wèn)題及解決方法
5. Vue中的雙向數(shù)據(jù)綁定是如何實(shí)現(xiàn)的
6. 詳述虛擬DOM中的diff算法
7. Vue提供了幾種腳手架模板
8. 常見的幾種MVVM的實(shí)現(xiàn)方式



六、前端常見面試題(六)@郝晨光

1. Vue路由的實(shí)現(xiàn)原理
2. SPA 路由history模式上線后刷新404
3. route和router的區(qū)別
4. 自定義過(guò)濾器詳解
5. assets和static/public的區(qū)別



七、前端常見面試題(七)@郝晨光

1. 簡(jiǎn)述同步和異步的區(qū)別
2. 數(shù)組去重(手寫代碼)
3. 在JavaScript中什么是偽數(shù)組?如何將偽數(shù)組轉(zhuǎn)化為標(biāo)準(zhǔn)數(shù)組
4. SPA路由history模式,打包上線都遇到了哪些問(wèn)題?你是如何解決的?
5. JavaScript中callee和caller的作用



八、前端常見面試題(八)@郝晨光

1. ES5/ES6 的繼承除了寫法以外還有什么區(qū)別?
2. http狀態(tài)碼有哪些?分別是什么意思?
3. 瀏覽器是如何渲染頁(yè)面的?
4. typeof 和 instanceof 相同點(diǎn)與不同點(diǎn)
5. 如何解決回調(diào)地獄?請(qǐng)手寫代碼



九、前端常見面試題(九)@郝晨光

1. 請(qǐng)?jiān)斀庖苿?dòng)端點(diǎn)透,為什么會(huì)發(fā)生點(diǎn)透?描述發(fā)生的場(chǎng)景及解決方案
2. 移動(dòng)端為什么會(huì)有一像素問(wèn)題?如何解決?
3. 你還知不知道其他移動(dòng)端的常見問(wèn)題?



十、前端常見面試題(十)@郝晨光

1. new操作符干了什么?
2. null和undefined的區(qū)別?
3. eval是做什么的?
4. iframe的優(yōu)缺點(diǎn)



十一、前端常見面試題(十一)@郝晨光

1. 什么是事件委托?為什么要用事件委托?
2. 你如何優(yōu)化自己的代碼?
3. 什么是盒模型?
4. 行內(nèi)、塊元素、空元素分別舉例
5. src和href的區(qū)別



十二、前端常見面試題(十二)@郝晨光

1. link和@import的區(qū)別
2. HTML5為什么只需要寫<!DOCTYPE HTML>?
3. Doctype作用,標(biāo)準(zhǔn)模式和兼容模式有什么區(qū)別
4. 請(qǐng)寫出html5新增的API
5. CSS優(yōu)先級(jí)算法如何計(jì)算?



十三、前端常見面試題(十三)@郝晨光

1. 列舉三種強(qiáng)制類型轉(zhuǎn)換和兩種隱式類型轉(zhuǎn)換
2. JavaScript typeof返回哪些數(shù)據(jù)類型
3. window.onload 和document.ready的區(qū)別
4. == 和 === 的區(qū)別
5. style標(biāo)簽寫在body前和body后有什么區(qū)別



十四、前端常見面試題(十四)@郝晨光

1. 怎樣添加、移除、復(fù)制、創(chuàng)建、查找節(jié)點(diǎn)
2. JQuery的事件委托on、live、delegate之間有什么區(qū)別
3. 描述一次完整的http請(qǐng)求過(guò)程(輸入url敲回車發(fā)生了什么)



十五、前端常見面試題(十五)@郝晨光

1. 什么是函數(shù)防抖和函數(shù)節(jié)流?有什么區(qū)別?
2. 什么是函數(shù)柯里化及有什么用?
3. 談?wù)勀K化開發(fā)
4. 談?wù)勀銓?duì)作用域鏈的理解
5. 什么是深拷貝?什么是淺拷貝?如何實(shí)現(xiàn)一個(gè)深拷貝函數(shù)?



十六、前端常見面試題(十六)@郝晨光

1. 用正則和非正則,實(shí)現(xiàn)一個(gè)字符串轉(zhuǎn)為駝峰
2. 判斷一個(gè)字符串中出現(xiàn)次數(shù)最多的字符,并統(tǒng)計(jì)這個(gè)次數(shù)
3. 寫一個(gè)獲取非行間樣式的函數(shù)
4. 字符串反轉(zhuǎn),如將 '12345678' 變成 '87654321'
5. 將數(shù)字 12345678 轉(zhuǎn)化成 RMB 形式 如: 12,345,678



十七、前端常見面試題(十七)@郝晨光

1. 解釋jsonp的原理
2. 在工作中你是如何優(yōu)化自己的代碼的?
3. axios是什么?如何使用?描述其實(shí)現(xiàn)登錄的流程



十八、前端常見面試題(十八)@郝晨光

1. 手寫promise封裝axios
2. 詳述前端性能優(yōu)化的手段
3. 瀏覽器輸入網(wǎng)址回車發(fā)生了什么
4. 列舉你知道的瀏覽器內(nèi)核



十九、前端常見面試題(十九)@郝晨光

1. 實(shí)現(xiàn)三欄布局,左右兩欄固定寬度100px,中間欄自適應(yīng)寬度,實(shí)現(xiàn)三列自適應(yīng)等高
2. 隨機(jī)選取 10 - 50 之間的 10 個(gè)數(shù)字,存入一個(gè)數(shù)組,并排序,并不能有重復(fù)
3. 寫一個(gè)閉包的應(yīng)用例子
4. 如何把函數(shù)add(1,2,3,4)的調(diào)用方式改為add(1)(2)(3)(4);
5. 在javascript中什么是偽數(shù)組?如何把偽數(shù)組轉(zhuǎn)換為真實(shí)數(shù)組?
6. 異步加載JS的方式有哪些?
7. 什么是Polyfill?
8. 封裝一個(gè)簡(jiǎn)單的ajax,返回Promise對(duì)象
9. 寫一個(gè)簡(jiǎn)單的jsonp的實(shí)現(xiàn)。



二十、前端常見面試題(二十)@郝晨光

1. js的特性不包括;
2. 在javascript中,以下變量命名非法的是;
3. 下列正則表達(dá)式中,匹配首位是小寫字母,其他位數(shù)是小寫字母或者數(shù)字的最少兩位字符串的是;
4. 以下代碼輸出結(jié)果為;
5. 在javascript中,以下代碼的運(yùn)行結(jié)果是;
6. 關(guān)于git和svn的說(shuō)法正確的是?
7. 在JQuery中,對(duì)于以下代碼;
8. 在javascript中,執(zhí)行下面的代碼后,結(jié)果是;
9. axios指的是什么?如何使用?描述其實(shí)現(xiàn)注冊(cè)功能流程。
10. 通過(guò)npm run build打包部署到服務(wù)器上有時(shí)會(huì)出現(xiàn)頁(yè)面空白的問(wèn)題,一般是什么原因?請(qǐng)具體描述;如果打包后沒(méi)有部署在服務(wù)器根目錄,而是在H5-page中進(jìn)行部署,需要做哪些操作。
11. 實(shí)現(xiàn)下圖的效果,獲取今天的日期,以及隨后六天的日期,并對(duì)應(yīng)是周幾。
12. 用YYYY-MM-DD hh:mm:ss 的方式輸出當(dāng)前的時(shí)間,比如當(dāng)前時(shí)間是 2018年4月18日17時(shí)42分23秒,則輸出2018-04-18 17:42:23
13. 定義一個(gè)字符串,并輸出這個(gè)字符串中的逗號(hào)和數(shù)字的個(gè)數(shù)



二十一、前端常見面試題(二十一)@郝晨光

1. URL轉(zhuǎn)對(duì)象
2. 不使用循環(huán)返回?cái)?shù)組
3. 事件委托的實(shí)現(xiàn)
4. 冒泡排序
5. 輸出字符串中出現(xiàn)次數(shù)最多的字符及其出現(xiàn)次數(shù)
6. 判斷是否是回文
7. 千分符,將數(shù)字格式化成RMB格式
8. 字符串轉(zhuǎn)駝峰
9. 找出數(shù)組最大的差值,最大值減最小值的差
10. 數(shù)組去重
11. 獲取非行間樣式
12. 斐波那契數(shù)列



二十二、前端常見面試題(二十二)@郝晨光

1. vw、vh、rem、em、px的區(qū)別
2. 前端安全:xss攻擊和CSRF攻擊
3. http和https的區(qū)別
4. 優(yōu)雅降級(jí)和逐漸增強(qiáng)
5. 什么是堆和棧
6. 什么是BFC
7. 什么是閉包,閉包的優(yōu)缺點(diǎn),內(nèi)存泄露怎么處理,閉包的使用場(chǎng)景
8. 內(nèi)存泄露
9. 將多維數(shù)組轉(zhuǎn)化為一維數(shù)組
10. JS繼承的方法及優(yōu)缺點(diǎn)



結(jié)言
感謝您的查閱,本文由郝晨光整理并總結(jié),代碼冗余或者有錯(cuò)誤的地方望不吝賜教;菜鳥一枚,請(qǐng)多關(guān)照。
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 對(duì)MVC、MVP、MVVM的理解 MVC阮一峰老師MVC圖示 M 表示 Model , 專門用來(lái)處理數(shù)據(jù)模型。V ...
    郝晨光閱讀 2,812評(píng)論 1 22
  • Vue路由的實(shí)現(xiàn)原理 路由這個(gè)概念最初是由后端提出來(lái)的,在我們沒(méi)有SPA單頁(yè)面應(yīng)用之前,使用的一直都是后端路由,根...
    郝晨光閱讀 1,977評(píng)論 0 19
  • 請(qǐng)?jiān)斀庖苿?dòng)端點(diǎn)透,為什么會(huì)發(fā)生點(diǎn)透?描述發(fā)生的場(chǎng)景及解決方案 提到移動(dòng)端點(diǎn)透問(wèn)題,就不得不先提到移動(dòng)端的click...
    郝晨光閱讀 1,897評(píng)論 0 10
  • 簡(jiǎn)述同步和異步的區(qū)別 眾所周知,javascript是單線程的語(yǔ)言,所謂的單線程,就是從上至下,依次執(zhí)行,當(dāng)然這里...
    郝晨光閱讀 1,897評(píng)論 1 21
  • link和@import的區(qū)別 始終建議使用link,慎用@import 從屬關(guān)系 link:link是HTML提...
    郝晨光閱讀 1,050評(píng)論 0 5

友情鏈接更多精彩內(nèi)容