2018前端面試題及答案匯總HTML_第1頁(yè)
2018前端面試題及答案匯總HTML_第2頁(yè)
2018前端面試題及答案匯總HTML_第3頁(yè)
2018前端面試題及答案匯總HTML_第4頁(yè)
2018前端面試題及答案匯總HTML_第5頁(yè)
已閱讀5頁(yè),還剩7頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

2018前端面試題及答案匯總HTML/CSS部分1、什么是盒子模型?在網(wǎng)頁(yè)中,一個(gè)元素占有空間的大小由幾個(gè)部分構(gòu)成,其中包括元素的內(nèi)容(content),元素的內(nèi)邊距(padding),元素的邊框(border),元素的外邊距(margin)四個(gè)部分。這四個(gè)部分占有的空間中,有的部分可以顯示相應(yīng)的內(nèi)容,而有的部分只用來(lái)分隔相鄰的區(qū)域或區(qū)域。4個(gè)部分一起構(gòu)成了css中元素的盒模型。

2、行內(nèi)元素有哪些?塊級(jí)元素有哪些?空(void)元素有那些?行內(nèi)元素:a、b、span、img、input、strong、select、label、em、button、textarea塊級(jí)元素:div、ul、li、dl、dt、dd、p、h1-h6、blockquote空元素:即系沒(méi)有內(nèi)容的HTML元素,例如:br、meta、hr、link、input、img

3、CSS實(shí)現(xiàn)垂直水平居中一道經(jīng)典的問(wèn)題,實(shí)現(xiàn)方法有很多種,以下是其中一種實(shí)現(xiàn):HTML結(jié)構(gòu):<divclass="wrapper">

<divclass="content"></div></div>CSS:.wrapper{position:relative;}.content{ background-color:#6699FF; width:200px; height:200px; position:absolute;

//父元素需要相對(duì)定位 top:50%; left:50%; margin-top:-100px;

//二分之一的height,width margin-left:-100px;}

4、簡(jiǎn)述一下src與href的區(qū)別href是指向網(wǎng)絡(luò)資源所在位置,建立和當(dāng)前元素(錨點(diǎn))或當(dāng)前文檔(鏈接)之間的鏈接,用于超鏈接。src是指向外部資源的位置,指向的內(nèi)容將會(huì)嵌入到文檔中當(dāng)前標(biāo)簽所在位置;在請(qǐng)求src資源時(shí)會(huì)將其指向的資源下載并應(yīng)用到文檔內(nèi),例如js腳本,img圖片和frame等元素。當(dāng)瀏覽器解析到該元素時(shí),會(huì)暫停其他資源的下載和處理,直到將該資源加載、編譯、執(zhí)行完畢,圖片和框架等元素也如此,類似于將所指向資源嵌入當(dāng)前標(biāo)簽內(nèi)。這也是為什么將js腳本放在底部而不是頭部。

5、什么是CSSHack?一般來(lái)說(shuō)是針對(duì)不同的瀏覽器寫(xiě)不同的CSS,就是CSSHack。IE瀏覽器Hack一般又分為三種,條件Hack、屬性級(jí)Hack、選擇符Hack(詳細(xì)參考CSS文檔:css文檔)。例如://1、條件Hack<!--[ifIE]>

<style> .test{color:red;}

</style><![endif]-->//2、屬性Hack.test{color:#090\9;/*ForIE8+*/*color:#f00;

/*ForIE7andearlier*/_color:#ff0;

/*ForIE6andearlier*/}//3、選擇符Hack*html.test{color:#090;}

/*ForIE6andearlier*/*+html.test{color:#ff0;}

/*ForIE7*/

6、簡(jiǎn)述同步和異步的區(qū)別同步是阻塞模式,異步是非阻塞模式。同步就是指一個(gè)進(jìn)程在執(zhí)行某個(gè)請(qǐng)求的時(shí)候,若該請(qǐng)求需要一段時(shí)間才能返回信息,那么這個(gè)進(jìn)程將會(huì)一直等待下去,直到收到返回信息才繼續(xù)執(zhí)行下去;異步是指進(jìn)程不需要一直等下去,而是繼續(xù)執(zhí)行下面的操作,不管其他進(jìn)程的狀態(tài)。當(dāng)有消息返回時(shí)系統(tǒng)會(huì)通知進(jìn)程進(jìn)行處理,這樣可以提高執(zhí)行的效率。

7、px和em的區(qū)別px和em都是長(zhǎng)度單位,區(qū)別是,px的值是固定的,指定是多少就是多少,計(jì)算比較容易。em得值不是固定的,并且em會(huì)繼承父級(jí)元素的字體大小。瀏覽器的默認(rèn)字體高都是16px。所以未經(jīng)調(diào)整的瀏覽器都符合:1em=16px。那么12px=0.75em,10px=0.625em

8、什么叫優(yōu)雅降級(jí)和漸進(jìn)增強(qiáng)?漸進(jìn)增強(qiáng)progressiveenhancement:

針對(duì)低版本瀏覽器進(jìn)行構(gòu)建頁(yè)面,保證最基本的功能,然后再針對(duì)高級(jí)瀏覽器進(jìn)行效果、交互等改進(jìn)和追加功能達(dá)到更好的用戶體驗(yàn)。優(yōu)雅降級(jí)gracefuldegradation:

一開(kāi)始就構(gòu)建完整的功能,然后再針對(duì)低版本瀏覽器進(jìn)行兼容。區(qū)別:a.優(yōu)雅降級(jí)是從復(fù)雜的現(xiàn)狀開(kāi)始,并試圖減少用戶體驗(yàn)的供給b.漸進(jìn)增強(qiáng)則是從一個(gè)非?;A(chǔ)的,能夠起作用的版本開(kāi)始,并不斷擴(kuò)充,以適應(yīng)未來(lái)環(huán)境的需要c.降級(jí)(功能衰減)意味著往回看;而漸進(jìn)增強(qiáng)則意味著朝前看,同時(shí)保證其根基處于安全地帶

9、瀏覽器的內(nèi)核分別是什么?IE:trident內(nèi)核Firefox:gecko內(nèi)核Safari:webkit內(nèi)核Opera:以前是presto內(nèi)核,Opera現(xiàn)已改用GoogleChrome的Blink內(nèi)核Chrome:Blink(基于webkit,Google與OperaSoftware共同開(kāi)發(fā))

JavaScript部分1、怎樣添加、移除、移動(dòng)、復(fù)制、創(chuàng)建和查找節(jié)點(diǎn)?1)創(chuàng)建新節(jié)點(diǎn)createDocumentFragment()//創(chuàng)建一個(gè)DOM片段createElement()//創(chuàng)建一個(gè)具體的元素createTextNode()//創(chuàng)建一個(gè)文本節(jié)點(diǎn)2)添加、移除、替換、插入appendChild()//添加removeChild()//移除replaceChild()//替換insertBefore()//插入3)查找getElementsByTagName()//通過(guò)標(biāo)簽名稱getElementsByName()//通過(guò)元素的Name屬性的值getElementById()//通過(guò)元素Id,唯一性

2、實(shí)現(xiàn)一個(gè)函數(shù)clone,可以對(duì)JavaScript中的5種主要的數(shù)據(jù)類型(包括Number、String、Object、Array、Boolean)進(jìn)行值復(fù)制。(Ototype.toString.call()方法及面試應(yīng)用)/***對(duì)象克隆*支持基本數(shù)據(jù)類型及對(duì)象*遞歸方法*/3、如何消除一個(gè)數(shù)組里面重復(fù)的元素?4、想實(shí)現(xiàn)一個(gè)對(duì)頁(yè)面某個(gè)節(jié)點(diǎn)的拖曳?如何做?(使用原生JS)。注意:

為了讓元素可拖動(dòng),需要使用HTML5

draggable

屬性。提示:

鏈接和圖片默認(rèn)是可拖動(dòng)的,不需要draggable屬性。在拖放的過(guò)程中會(huì)觸發(fā)以下事件:在拖動(dòng)目標(biāo)上觸發(fā)事件

(源元素):ondragstart-用戶開(kāi)始拖動(dòng)元素時(shí)觸發(fā)ondrag

-元素正在拖動(dòng)時(shí)觸發(fā)ondragend

-用戶完成元素拖動(dòng)后觸發(fā)釋放目標(biāo)時(shí)觸發(fā)的事件:ondragenter

-當(dāng)被鼠標(biāo)拖動(dòng)的對(duì)象進(jìn)入其容器范圍內(nèi)時(shí)觸發(fā)此事件ondragover

-當(dāng)某被拖動(dòng)的對(duì)象在另一對(duì)象容器范圍內(nèi)拖動(dòng)時(shí)觸發(fā)此事件ondragleave

-當(dāng)被鼠標(biāo)拖動(dòng)的對(duì)象離開(kāi)其容器范圍內(nèi)時(shí)觸發(fā)此事件ondrop

-在一個(gè)拖動(dòng)過(guò)程中,釋放鼠標(biāo)鍵時(shí)觸發(fā)此事件5、在Javascript中什么是偽數(shù)組?如何將偽數(shù)組轉(zhuǎn)化為標(biāo)準(zhǔn)數(shù)組?偽數(shù)組(類數(shù)組):無(wú)法直接調(diào)用數(shù)組方法或期望length屬性有什么特殊的行為,但仍可以對(duì)真正數(shù)組遍歷方法來(lái)遍歷它們。典型的是函數(shù)的argument參數(shù),還有像調(diào)用getElementsByTagName,document.childNodes之類的,它們都返回NodeList對(duì)象都屬于偽數(shù)組。使用Atotype.slice.call();b.使用[].slice.call(),了解js原型鏈的都知道,實(shí)際上這種方法和第一中方法是一樣的,但上面第一種方式相對(duì)效率更高。c使用ES6中Array.from方法;6、Javascript中callee和caller的作用?caller是返回一個(gè)對(duì)函數(shù)的引用,該函數(shù)調(diào)用了當(dāng)前函數(shù);callee是返回正在被執(zhí)行的function函數(shù),也就是所指定的function對(duì)象的正文。

7、請(qǐng)描述一下cookies,sessionStorage和localStorage的區(qū)別sessionStorage用于本地存儲(chǔ)一個(gè)會(huì)話(session)中的數(shù)據(jù),這些數(shù)據(jù)只有在同一個(gè)會(huì)話中的頁(yè)面才能訪問(wèn)并且當(dāng)會(huì)話結(jié)束后數(shù)據(jù)也隨之銷毀。因此sessionStorage不是一種持久化的本地存儲(chǔ),僅僅是會(huì)話級(jí)別的存儲(chǔ)。而localStorage用于持久化的本地存儲(chǔ),除非主動(dòng)刪除數(shù)據(jù),否則數(shù)據(jù)是永遠(yuǎn)不會(huì)過(guò)期的。webstorage和cookie的區(qū)別WebStorage的概念和cookie相似,區(qū)別是它是為了更大容量存儲(chǔ)設(shè)計(jì)的。Cookie的大小是受限的,并且每次你請(qǐng)求一個(gè)新的頁(yè)面的時(shí)候Cookie都會(huì)被發(fā)送過(guò)去,這樣無(wú)形中浪費(fèi)了帶寬,另外cookie還需要指定作用域,不可以跨域調(diào)用。除此之外,WebStorage擁有setItem,getItem,removeItem,clear等方法,不像cookie需要前端開(kāi)發(fā)者自己封裝setCookie,getCookie。但是Cookie也是不可以或缺的:Cookie的作用是與服務(wù)器進(jìn)行交互,作為HTTP規(guī)范的一部分而存在,而WebStorage僅僅是為了在本地“存儲(chǔ)”數(shù)據(jù)而生。

8、手寫(xiě)數(shù)組快速排序關(guān)于快排算法的詳細(xì)說(shuō)明,可以參考阮一峰老師的文章快速排序“快速排序”的思想很簡(jiǎn)單,整個(gè)排序過(guò)程只需要三步:(1)在數(shù)據(jù)集之中,選擇一個(gè)元素作為”基準(zhǔn)”(pivot)。

(2)所有小于”基準(zhǔn)”的元素,都移到”基準(zhǔn)”的左邊;所有大于”基準(zhǔn)”的元素,都移到”基準(zhǔn)”的右邊。

(3)對(duì)”基準(zhǔn)”左邊和右邊的兩個(gè)子集,不斷重復(fù)第一步和第二步,直到所有子集只剩下一個(gè)元素為止。

9、統(tǒng)計(jì)字符串”aaaabbbccccddfgh”中字母?jìng)€(gè)數(shù)或統(tǒng)計(jì)最多字母數(shù)。10、寫(xiě)一個(gè)function,清除字符串前后的空格。(兼容所有瀏覽器)其他1、一次完整的HTTP事務(wù)是怎樣的一個(gè)過(guò)程?基本流程:a.域名解析b.發(fā)起TCP的3次握手c.建立TCP連接后發(fā)起http請(qǐng)求d.服務(wù)器端響應(yīng)http請(qǐng)求,瀏覽器得到html代碼e.瀏覽器解析html代碼,并請(qǐng)求html代碼中的資源f.瀏覽器對(duì)頁(yè)面進(jìn)行渲染呈現(xiàn)給用戶

2、對(duì)前端工程師這個(gè)職位你是怎么樣理解的?a.前端是最貼近用戶的程序員,前端的能力就是能讓產(chǎn)品從90分進(jìn)化到100分,甚至更好b.參與項(xiàng)目,快速高質(zhì)量完成實(shí)現(xiàn)效果圖,精確到1px;c.與團(tuán)隊(duì)成員,UI設(shè)計(jì),產(chǎn)品經(jīng)理的溝通;d.做好的頁(yè)面結(jié)構(gòu),頁(yè)面重構(gòu)和用戶體驗(yàn);e.處理hack,兼容、寫(xiě)出優(yōu)美的代碼格式;f.針對(duì)服務(wù)器的優(yōu)化、擁抱最新前端技術(shù)。其中專業(yè)理論知識(shí)內(nèi)容包括:保安理論知識(shí)、消防業(yè)務(wù)知識(shí)、職業(yè)道德、法律常識(shí)、保安禮儀、救護(hù)知識(shí)。作技能訓(xùn)練內(nèi)容包括:崗位操作指引、勤務(wù)技能、消防技能、軍事技能。二.培訓(xùn)的及要求培訓(xùn)目的安全生產(chǎn)目標(biāo)責(zé)任書(shū)為了進(jìn)一步落實(shí)安全生產(chǎn)責(zé)任制,做到“責(zé)、權(quán)、利”相結(jié)合,根據(jù)我公司2015年度安全生產(chǎn)目標(biāo)的內(nèi)容,現(xiàn)與財(cái)務(wù)部簽訂如下安全生產(chǎn)目標(biāo):一、目標(biāo)值:1、全年人身死亡事故為零,重傷事故為零,輕傷人數(shù)為零。2、現(xiàn)金安全保管,不發(fā)生盜竊事故。3、每月足額提取安全生產(chǎn)費(fèi)用,保障安全生產(chǎn)投入資金的到位。4、安全培訓(xùn)合格率為100%。二、本單位安全工作上必須做到以下內(nèi)容:1、對(duì)本單位的安全生產(chǎn)負(fù)直接領(lǐng)導(dǎo)責(zé)任,必須模范遵守公司的各項(xiàng)安全管理制度,不發(fā)布與公司安全管理制度相抵觸的指令,嚴(yán)格履行本人的安全職責(zé),確保安全責(zé)任制在本單位全面落實(shí),并全力支持安全工作。2、保證公司各項(xiàng)安全管理制度和管理辦法在本單位內(nèi)全面實(shí)施,并自覺(jué)接受公司安全部門的監(jiān)督和管理。3、在確保安全的前提下組織生產(chǎn),始終把安全工作放在首位,當(dāng)“安全與交貨期、質(zhì)量”發(fā)生矛盾時(shí),堅(jiān)持安全第一的原則。4、參加生產(chǎn)碰頭會(huì)時(shí),首先匯報(bào)本單位的安全生產(chǎn)情況和安全問(wèn)題落實(shí)情況;在安排本單位生產(chǎn)任務(wù)時(shí),必須安排安全工作內(nèi)容,并寫(xiě)入記錄。5、在公司及政府的安全檢查中杜絕各類違章現(xiàn)象。6、組織本部門積極參加安全檢查,做到有檢查、有整改,記錄全。7、以身作則,不違章指揮、不違章操作。對(duì)發(fā)現(xiàn)的各類違章現(xiàn)象負(fù)有查禁的責(zé)任,同

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論