解析前端面試題2019年小米工程師面試題(附答案)

一、單選題(共24題,每題5分)
1.關(guān)于XSS的說(shuō)法,錯(cuò)誤的是
A、script,js,vbscript,flash
B、分類(lèi):反射,存儲(chǔ)
C、是瀏覽器端代碼注入,惡意的script,css,html代碼被瀏覽器解析
D、PHP相關(guān)漏洞
參考答案:D
答案解析:是瀏覽器端代碼注入,惡意的script,css,html代碼被瀏覽器解析。 分類(lèi):反射,存儲(chǔ) script,js,vbscript,flash
2.關(guān)于JSONP使用的說(shuō)法錯(cuò)誤的是:
A、可以實(shí)現(xiàn)跨域通信
B、基于 json 格式數(shù)據(jù),兼容性好,簡(jiǎn)單易用
C、只支持跨域HTTP請(qǐng)求這種情況,不能解決不同域的兩個(gè)頁(yè)面之間進(jìn)行JavaScript調(diào)用的問(wèn)題
D、可以完美支持POST請(qǐng)求
參考答案:D
3.HTML頁(yè)面中有如下結(jié)構(gòu)的代碼, 下列選項(xiàng)所示jQuery代碼,不能夠讓漢字“四”的顏色變成紅色的是?
A、 $("#header ul li:eq(3)").css("color","red");
B、 $("#header li:eq(3)").css("color","red");
C、 $("#header li:last").css("color","red");
D、 $("#header li:gt(3)").css("color","red");
參考答案:D
答案解析:
注意是選擇不能
4.下面哪一種屬于“creational”的設(shè)計(jì)模式?
A、Façade
B、Singleton
C、Bridge
D、Composite
E、上面都不是
參考答案:B
答案解析:
總體來(lái)說(shuō)設(shè)計(jì)模式分為三大類(lèi):
創(chuàng)建型模式,共五種:工廠(chǎng)方法模式、抽象工廠(chǎng)模式、單例模式、建造者模式、原型模式。
結(jié)構(gòu)型模式,共七種:適配器模式、裝飾器模式、代理模式、外觀模式、橋接模式、組合模式、享元模式。
行為型模式,共十一種:策略模式、模板方法模式、觀察者模式、迭代子模式、責(zé)任鏈模式、命令模式、備忘錄模式、狀態(tài)模式、訪(fǎng)問(wèn)者模式、中介者模式、解釋器模式。
5.站點(diǎn)首頁(yè)最常用的文件名是( )。
A、index.html
B、homepage.html
C、resource.html
D、mainfrm.html
參考答案:A
答案解析:站點(diǎn)首頁(yè)最常用的文件名是index.html,其次是default.html。
6.sessionStorage 保存數(shù)據(jù)的方法正確的是:
A、sessionStorage.setItem(“鍵值”,”鍵名”);
B、sessionStorage.saveItem(“鍵名”,”鍵值”);
C、sessionStorage.saveItem(“鍵值”,”鍵名”);
D、sessionStorage.setItem(“鍵名”,”鍵值”);
參考答案:D
答案解析:你只要記住兩點(diǎn),設(shè)置一般用 set 開(kāi)頭, 獲取采用 get 開(kāi)頭; 對(duì)于鍵值的話(huà),一般都是 (key, value)的形式; 所以選D
7.使用CSS聲明一個(gè)關(guān)聯(lián)樣式選擇器,以下幾種HTML元素中的內(nèi)容可以為紅色字體的是: ( )
A、<div>內(nèi)容</div>
B、<div><em><span>內(nèi)容</span><em></div>
C、<span></div>內(nèi)容</div></span>
D、以上都可以
8.JavaScript代碼的用途描述錯(cuò)誤的是()
A、JavaScript在網(wǎng)頁(yè)制作中廣泛使用
B、JavaScript是一種功能強(qiáng)大的弱類(lèi)型語(yǔ)言
C、JavaScript是一種腳本語(yǔ)言,所以它一般沒(méi)人用
D、avaScript是一種解釋型腳本語(yǔ)言
9.下圖所示為(44)設(shè)計(jì)模式,屬于(45)設(shè)計(jì)模式,適用于(46)。
A、 表示對(duì)象的部分—整體層次結(jié)構(gòu)時(shí)
B、當(dāng)一個(gè)對(duì)象必須通知其它對(duì)象,而它又不能假定其它對(duì)象是誰(shuí)時(shí)
C、當(dāng)創(chuàng)建復(fù)雜對(duì)象的算法應(yīng)該獨(dú)立于該對(duì)象的組成部分及其裝配方式時(shí)
D、在需要比較通用和復(fù)雜的對(duì)象指針代替簡(jiǎn)單的指針時(shí)
10.數(shù)值數(shù)據(jù)在計(jì)算機(jī)內(nèi)用二進(jìn)制編碼表示,常用的編碼有()
A、補(bǔ)碼
B、ASCII碼
C、GB2312碼
D、UFT-8碼
參考答案:A
答案解析:原碼、反碼和補(bǔ)碼
11.當(dāng)使用HTML5的拖放API實(shí)現(xiàn)拖動(dòng)時(shí),需要監(jiān)聽(tīng)”開(kāi)始拖動(dòng)”事件,此事件的...
當(dāng)使用HTML5的拖放API實(shí)現(xiàn)拖動(dòng)時(shí),需要監(jiān)聽(tīng)”開(kāi)始拖動(dòng)”事件,此事件的名稱(chēng)是:
A、dragstart
B、dragend
C、drop
D、mousedown
參考答案:A
答案解析:拖放是一種常見(jiàn)的特性,即抓取對(duì)象以后拖到另一個(gè)位置。 在 HTML5 中,拖放是標(biāo)準(zhǔn)的一部分,任何元素都能夠拖放。 首先,為了使元素可拖動(dòng),把 draggable 屬性設(shè)置為 true 拖動(dòng)什么 - ondragstart 放到何處 -ondragover ondragover 事件規(guī)定在何處放置被拖動(dòng)的數(shù)據(jù)。 進(jìn)行放置 - ondrop 當(dāng)放置被拖數(shù)據(jù)時(shí),會(huì)發(fā)生 drop 事件
12.關(guān)于 css 布局中的 BFC ,描述錯(cuò)誤的是
關(guān)于 css 布局中的 BFC ,描述錯(cuò)誤的是
A、BFC的區(qū)域會(huì)與float的元素區(qū)域重疊
B、計(jì)算BFC的高度時(shí),浮動(dòng)子元素也參與計(jì)算
C、BFC就是頁(yè)面上的一個(gè)隔離的獨(dú)立容器,容器里面的子元素是不會(huì)影響到外面的元素
D、BFC意為”塊級(jí)格式化上下文”
參考答案:A
答案解析:
百度了很多BFC的內(nèi)容,總結(jié)了一篇筆記。 </http:>
13.TCP/IP協(xié)議棧中的位置(由上到下)?
A、TCP->IP->HTTP->數(shù)據(jù)鏈路層
B、IP->HTTP->TCP->數(shù)據(jù)鏈路層
C、HTTP->IP->TCP->數(shù)據(jù)鏈路層
D、HTTP->TCP->IP->數(shù)據(jù)鏈路層
參考答案:D
答案解析:HTTP協(xié)議通常承載于TCP協(xié)議之上,有時(shí)也承載于TLS或SSL協(xié)議層之上 正確排序?yàn)镠TTP->TCP->IP->數(shù)據(jù)鏈路層
14.下面有關(guān)HTML的Doctype和嚴(yán)格模式與混雜模式的描述,錯(cuò)誤的是?
A、聲明位于文檔中的最前面,處于 標(biāo)簽之前。告知瀏覽器的解析器,用什么文檔類(lèi)型 規(guī)范來(lái)解析這個(gè)文檔
B、在標(biāo)準(zhǔn)模式中,瀏覽器根據(jù)規(guī)范呈現(xiàn)頁(yè)面;在混雜模式中,頁(yè)面以一種比較寬松的向后兼容的方式顯示
C、DOCTYPE不存在或格式不正確會(huì)導(dǎo)致文檔以標(biāo)準(zhǔn)模式呈現(xiàn)
D、瀏覽器根據(jù)DOCTYPE是否存在以及使用的哪種DTD來(lái)選擇要使用的呈現(xiàn)方法
參考答案:C
答案解析:文檔類(lèi)型
DTD(文檔類(lèi)型定義)是一組機(jī)器可讀的規(guī)則,他們定義 XML 或 HTML 的特定版本中允許有什么,不允許有什么。在解析網(wǎng)頁(yè)時(shí),瀏覽器將使用這些規(guī)則檢查頁(yè)面的有效性并且采取相應(yīng)的措施。瀏覽器通過(guò)分析頁(yè)面的 DOCTYPE 聲明來(lái)了解要使用哪個(gè) DTD ,由此知道要使用 HTML 的哪個(gè)版本。
DOCTYPE 當(dāng)前有兩種風(fēng)格,嚴(yán)格( strict )和過(guò)渡( transitional )。過(guò)渡 DOCTYPE 的目的是幫助開(kāi)發(fā)人員從老版本遷移到新版本。
如果發(fā)送具有正確的 MIME 類(lèi)型的 XHTML 文檔,理解 XML 的瀏覽器將不顯示無(wú)效的頁(yè)面。
瀏覽器模式
瀏覽器有兩種呈現(xiàn)模式:標(biāo)準(zhǔn)模式和混雜模式(quirks mode)。在標(biāo)準(zhǔn)模式中,瀏覽器根據(jù)規(guī)范呈現(xiàn)頁(yè)面;在混雜模式中,頁(yè)面以一種比較寬松的向后兼容的方式顯示。
DOCTYPE 切換
對(duì)于 HTML 4.01 文檔,
包含嚴(yán)格 DTD 的 DOCTYPE 常常導(dǎo)致頁(yè)面以標(biāo)準(zhǔn)模式呈現(xiàn)。
包含過(guò)度 DTD 和 URI 的 DOCTYPE 也導(dǎo)致頁(yè)面以標(biāo)準(zhǔn)模式呈現(xiàn)。
但是有過(guò)度 DTD 而沒(méi)有 URI 會(huì)導(dǎo)致頁(yè)面以混雜模式呈現(xiàn)。
DOCTYPE 不存在或形式不正確會(huì)導(dǎo)致 HTML 和 XHTML 文檔以混雜模式呈現(xiàn)
15.在css3中要使元素由一種樣式轉(zhuǎn)換成另一種樣式,為元素添加效果的屬性是?
A、animation
B、keyframes
C、flash
D、transform
16.HTTPS是一種安全的HTTP協(xié)議,它使用 ( ) 來(lái)保證信息安全?
A、IPSec
B、SSL
C、SET
D、SSH
參考答案:B
答案解析:
SSL是解決傳輸層安全問(wèn)題的一個(gè)主要協(xié)議,其設(shè)計(jì)的初衷是基于TCP協(xié)議之上提供可靠的端到端安全服務(wù)。應(yīng)用SSL協(xié)議最廣泛的是HTTPS,它為客戶(hù)瀏覽器和Web服務(wù)器之間交換信息提供安全通信支持。它使用TCP的443端口發(fā)送和接收?qǐng)?bào)文。
17.下列哪一項(xiàng)不是HTML5中新增加的標(biāo)簽?
A、nav
B、article
C、caption
D、video
18.下列jQuery事件綁定正確的是____。
A、$(‘#demo’).bind(‘click’,function(){})
B、$(‘#demo’).click(function() {})
C、$(‘#demo’).on(‘click’,function() {})
D、$(‘#demo’).one(‘click’,function() {})
參考答案:A
答案解析:
.bind( eventType [, eventData ], handler(eventObject) )
為一個(gè)元素綁定一個(gè)事件處理程序。
.on( events [, selector ] [, data ], handler(eventObject) )
在選定的元素上綁定一個(gè)或多個(gè)事件處理函數(shù)。
.one( events [, data ], handler(eventObject) )
附加一個(gè)處理事件到元素。處理函數(shù)在每個(gè)元素上最多執(zhí)行一次。
19.在jquery中,如果想要獲取當(dāng)前窗口的寬度值,下面哪個(gè)是實(shí)現(xiàn)該功能的?
A、width()
B、width(val)
C、width
D、innerWidth()
20.下面Http協(xié)議請(qǐng)求方式中不包括?
A、OPTIONS
B、HEAD
C、DELETE
D、SET
21.jQuery 對(duì)象的方法 get() 做什么?
A、觸發(fā)一個(gè)GET OBJECT請(qǐng)求
B、返回一個(gè)對(duì)象
C、返回存在jQuery對(duì)象中的DOM元素
D、觸發(fā)一個(gè)GET AJAX請(qǐng)求
22.以下關(guān)于HTTP method 的說(shuō)法,錯(cuò)誤的是?
A、一臺(tái)服務(wù)器要與HTTP1.1兼容,只要為資源實(shí)現(xiàn)GET和HEAD方法即可
B、PUT讓服務(wù)器用請(qǐng)求的主體部分來(lái)創(chuàng)建一個(gè)由所請(qǐng)求的URL命名的新文檔,或者,如果那個(gè)URL已經(jīng)存在的話(huà),就用干這個(gè)主體替代它
C、POST起初是用來(lái)向服務(wù)器輸入數(shù)據(jù)的。實(shí)際上,通常會(huì)用它來(lái)支持HTML的表單。表單中填好的數(shù)據(jù)通常會(huì)被送給服務(wù)器,然后由服務(wù)器將其發(fā)送到要去的地方。
D、TRACE方法請(qǐng)求web服務(wù)器告知其支持的各種功能??梢圆樵?xún)服務(wù)器支持哪些方法或者對(duì)某些特殊資源支持哪些方法。
23.當(dāng)表單中包含文件上傳控件時(shí),需要將enctype設(shè)置為()
A、application/x-www-form-urlencoded
B、multipart/form-data
C、text/explain
D、file-data
24.哪一個(gè)不是瀏覽器默認(rèn)的天生inline-block標(biāo)簽(擁有內(nèi)在尺寸,可設(shè)置高寬,不會(huì)自動(dòng)換行)?
A、<button>
B、<input>
C、<label>
D、<img>
二、多選題(共6題,每題5分)
1.JavaScript函數(shù)內(nèi)部arguments變量的說(shuō)法,正確的有?
A、arguments所有函數(shù)中都包含的一個(gè)局部變量,是一個(gè)類(lèi)數(shù)組對(duì)象,對(duì)應(yīng)函數(shù)調(diào)用時(shí)的實(shí)參,如果函數(shù)定義同名參數(shù)會(huì)在調(diào)用時(shí)覆蓋默認(rèn)對(duì)象
B、arguments[index]分別對(duì)應(yīng)函數(shù)調(diào)用時(shí)的實(shí)參,并且通過(guò)arguments修改實(shí)參時(shí)會(huì)同時(shí)修改實(shí)參
C、arguments.callee為當(dāng)前正在執(zhí)行的函數(shù)本身,使用這個(gè)屬性進(jìn)行遞歸調(diào)用時(shí)需注意this的變化
D、arguments.length為實(shí)參的個(gè)數(shù)(Function.length表示形參長(zhǎng)度)
參考答案:A,B,C,D
答案解析:
函數(shù)內(nèi)部arguments變量有哪些特性,有哪些屬性,如何將它轉(zhuǎn)換為數(shù)組
arguments所有函數(shù)中都包含的一個(gè)局部變量,是一個(gè)類(lèi)數(shù)組對(duì)象,對(duì)應(yīng)函數(shù)調(diào)用時(shí)的實(shí)參。如果函數(shù)定義同名參數(shù)會(huì)在調(diào)用時(shí)覆蓋默認(rèn)對(duì)象
arguments[index]分別對(duì)應(yīng)函數(shù)調(diào)用時(shí)的實(shí)參,并且通過(guò)arguments修改實(shí)參時(shí)會(huì)同時(shí)修改實(shí)參
arguments.length為實(shí)參的個(gè)數(shù)(Function.length表示形參長(zhǎng)度)
arguments.callee為當(dāng)前正在執(zhí)行的函數(shù)本身,使用這個(gè)屬性進(jìn)行遞歸調(diào)用時(shí)需注意this的變化
arguments.caller為調(diào)用當(dāng)前函數(shù)的函數(shù)(已被遺棄)
轉(zhuǎn)換為數(shù)組:var args = Array.prototype.slice.call(arguments, 0);
2.下列說(shuō)法正確的是()
A、display: none;不為被隱藏的對(duì)象保留其物理空間;
B、visibility:hidden;所占據(jù)的空間位置仍然存在,僅為視覺(jué)上的完全透明;
C、visibility:hidden;產(chǎn)生reflow和repaint(回流與重繪);
D、visibility:hidden;與display: none;兩者沒(méi)有本質(zhì)上的區(qū)別;
參考答案:A,B
答案解析:
3.關(guān)于柵格系統(tǒng),以下說(shuō)法正確的是
A、會(huì)有自動(dòng)的padding樣式
B、會(huì)有自動(dòng)的margin樣式
C、其字體默認(rèn)為14px
D、其box-sizing默認(rèn)為border-box
參考答案:A,C,D
答案解析:
此題有極大的問(wèn)題。柵格系統(tǒng)是把網(wǎng)頁(yè)分為 16 12 24欄。 只能要很好的劃分就好。有必要一定要?jiǎng)?chuàng)建間隔嗎。為了好理解我們創(chuàng)建一個(gè)10欄的柵格化。那么每欄寬度10%。沒(méi)有列間隔。你能說(shuō)他不叫柵格系統(tǒng)嗎?
4.假設(shè)MySQL數(shù)據(jù)庫(kù)表結(jié)構(gòu)如下,哪些sql語(yǔ)句查詢(xún)能較好的利用索引?
create table T{ k int unsigned not null auto\_increment, a date, b varchar(24), c int,d varchar(24), primary key(k),unique key a\_index (a DESC,b DESC), key k1(b),key k2(c),key k3(d) );
A、select b from WHERE b like 'aaa%';
B、select a,b from T WHERE a='2015-10-25' ORDER BY b ASC,c ASC;
C、select a,b,c from T WHERE a='2015-10-25' ORDER BY b ASC;
D、select a,b,c from T WHERE a='2015-10-25' ORDER BY a,b;
參考答案:A,D
答案解析:
題目中的索引b是降序,而B(niǎo),C兩個(gè)選項(xiàng)都是升序,故會(huì)導(dǎo)致效率降低。而A,D兩個(gè)選項(xiàng)沒(méi)有指定升序降序,故會(huì)按照其定義的索引a desc,b desc 來(lái)進(jìn)行操作,故而效率較高。所以選A,D。
5.下列哪些是正確的引入CSS文件到html中的方式? ()
A、<link rel="stylesheet" type="text/css" href="test.css">
B、<link rel="stylesheet" type="text/css" src="mystyle.css">
C、<style type=”text/css”>body{color:red}</style>
D、<style type=“text/css" src="test.css"></style>
6.可以包含在HTML網(wǎng)頁(yè)head標(biāo)簽中的有
A、<title>
B、<meta>
C、<body>
D、<link>
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
- 這篇文章主要介紹了Web前端面試筆試題總結(jié),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2020-02-18
- 這篇文章主要介紹了80道前端面試經(jīng)典選擇題匯總,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)2020-01-08
- 這篇文章主要介紹了面試官常問(wèn)的web前端問(wèn)題大全,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-01-03
- 這篇文章主要介紹了前端十幾道含答案的大廠(chǎng)面試題總結(jié),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2020-01-02
- 這篇文章主要介紹了超實(shí)用前端面試題整理(小結(jié)),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2019-12-19
- 這篇文章主要介紹了2020最新Web前端經(jīng)典面試試題,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-12-19
- 這篇文章主要介紹了2019年京東前端工程師面試題(附答案),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2019-11-26
- 這篇文章主要介紹了2019年滴滴出行前端工程師面試題(附答案),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)2019-11-25
- 這篇文章主要介紹了2019年百度前端工程師面試題(附答案),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2019-11-22
- 這篇文章主要介紹了2019年騰訊最新前端工程師面試題(附答案),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2019-11-21