2025四川九強(qiáng)通信科技有限公司招聘前端開(kāi)發(fā)工程師等崗位21人筆試歷年常考點(diǎn)試題專練附帶答案詳解試卷2套_第1頁(yè)
2025四川九強(qiáng)通信科技有限公司招聘前端開(kāi)發(fā)工程師等崗位21人筆試歷年??键c(diǎn)試題專練附帶答案詳解試卷2套_第2頁(yè)
2025四川九強(qiáng)通信科技有限公司招聘前端開(kāi)發(fā)工程師等崗位21人筆試歷年常考點(diǎn)試題專練附帶答案詳解試卷2套_第3頁(yè)
2025四川九強(qiáng)通信科技有限公司招聘前端開(kāi)發(fā)工程師等崗位21人筆試歷年??键c(diǎn)試題專練附帶答案詳解試卷2套_第4頁(yè)
2025四川九強(qiáng)通信科技有限公司招聘前端開(kāi)發(fā)工程師等崗位21人筆試歷年常考點(diǎn)試題專練附帶答案詳解試卷2套_第5頁(yè)
已閱讀5頁(yè),還剩69頁(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)介

2025四川九強(qiáng)通信科技有限公司招聘前端開(kāi)發(fā)工程師等崗位21人筆試歷年常考點(diǎn)試題專練附帶答案詳解(第1套)一、單項(xiàng)選擇題下列各題只有一個(gè)正確答案,請(qǐng)選出最恰當(dāng)?shù)倪x項(xiàng)(共30題)1、在JavaScript中,以下哪個(gè)方法可以用于檢測(cè)一個(gè)對(duì)象是否擁有某個(gè)自有屬性(非繼承屬性)?A.hasOwnProperty()B.propertyIsEnumerable()C.in操作符D.Object.keys()2、在CSS布局中,以下哪種方式可以實(shí)現(xiàn)元素的水平垂直居中(已知元素寬高固定)?A.設(shè)置margin:auto并配合絕對(duì)定位B.使用float:centerC.設(shè)置text-align:centerD.使用position:fixed和top:50%3、下列關(guān)于Vue.js響應(yīng)式原理的描述,正確的是哪一項(xiàng)?A.通過(guò)setInterval定時(shí)監(jiān)聽(tīng)數(shù)據(jù)變化B.使用Object.defineProperty()劫持?jǐn)?shù)據(jù)的getter和setterC.基于Proxy實(shí)現(xiàn),兼容所有瀏覽器D.通過(guò)DOM事件驅(qū)動(dòng)數(shù)據(jù)更新4、在HTTP協(xié)議中,以下哪個(gè)狀態(tài)碼表示“請(qǐng)求的資源已被永久移動(dòng)”?A.301B.302C.403D.4045、在HTML5中,以下哪個(gè)語(yǔ)義化標(biāo)簽最適合用于定義頁(yè)面的主要內(nèi)容區(qū)域?A.`<section>`B.`<div>`C.`<main>`D.`<article>`6、在JavaScript中,執(zhí)行以下代碼的輸出結(jié)果是什么?

console.log(1+'2'+3-4);A.1234B.121C.119D.NaN7、下列哪項(xiàng)是CSS中實(shí)現(xiàn)元素水平垂直居中的最推薦方式(現(xiàn)代瀏覽器)?A.使用position:absolute與負(fù)marginB.使用float與line-heightC.使用flexbox布局D.使用table-cell與vertical-align8、關(guān)于Vue.js中的響應(yīng)式原理,下列描述正確的是?A.通過(guò)定時(shí)輪詢檢測(cè)數(shù)據(jù)變化B.利用Object.defineProperty劫持對(duì)象屬性的getter和setterC.使用原生DOM事件監(jiān)聽(tīng)實(shí)現(xiàn)數(shù)據(jù)更新D.依賴瀏覽器的MutationObserver機(jī)制9、在HTTP協(xié)議中,下列哪個(gè)狀態(tài)碼表示“請(qǐng)求的資源未找到”?A.200B.301C.404D.50010、以下關(guān)于JavaScript事件循環(huán)(EventLoop)的說(shuō)法,正確的是?A.宏任務(wù)執(zhí)行完后才執(zhí)行微任務(wù)B.setTimeout屬于微任務(wù)C.Promise的回調(diào)屬于微任務(wù)D.事件循環(huán)每輪只執(zhí)行一個(gè)宏任務(wù)和一個(gè)微任務(wù)11、在JavaScript中,下列哪項(xiàng)能夠正確檢測(cè)一個(gè)變量是否為數(shù)組類型?A.typeofarr==='array'B.arrinstanceofArrayC.Array.isArray(arr)D.arr.constructor===Array12、關(guān)于CSS盒模型,下列描述正確的是?A.標(biāo)準(zhǔn)盒模型中,元素的寬度包含padding和borderB.IE盒模型中,width僅指內(nèi)容區(qū)域的寬度C.設(shè)置box-sizing:border-box后,width包含padding和borderD.box-sizing屬性默認(rèn)值是border-box13、下列關(guān)于HTTP狀態(tài)碼的描述中,哪一項(xiàng)屬于客戶端請(qǐng)求錯(cuò)誤?A.200B.301C.404D.50014、在Vue.js中,關(guān)于組件通信的說(shuō)法錯(cuò)誤的是?A.父組件通過(guò)props向子組件傳遞數(shù)據(jù)B.子組件通過(guò)$emit觸發(fā)事件向父組件通信C.使用Vuex可以實(shí)現(xiàn)任意組件間的狀態(tài)共享D.$attrs不包含class和style屬性15、下列哪種方法不能有效提升網(wǎng)頁(yè)的首屏加載速度?A.使用懶加載延遲加載非首屏圖片B.將所有CSS代碼內(nèi)聯(lián)到HTML中以減少請(qǐng)求C.壓縮JavaScript和CSS文件D.啟用HTTP緩存策略16、在JavaScript中,下列哪個(gè)方法可以用于檢測(cè)一個(gè)變量是否為數(shù)組類型?A.typeofB.instanceofC.isObject()D.hasOwnProperty()17、在CSS布局中,下列哪種方式可以實(shí)現(xiàn)元素的水平垂直居中,且兼容性良好、適用于未知寬高的塊級(jí)元素?A.使用float和marginB.使用position和負(fù)marginC.使用flexbox的justify-content與align-itemsD.使用display:table-cell18、關(guān)于Vue.js中的響應(yīng)式原理,以下說(shuō)法正確的是?A.Vue3使用Object.defineProperty實(shí)現(xiàn)響應(yīng)式B.Vue2通過(guò)Proxy監(jiān)聽(tīng)數(shù)據(jù)變化C.響應(yīng)式數(shù)據(jù)在初始化時(shí)必須在data中聲明D.Vue可以自動(dòng)檢測(cè)對(duì)象屬性的動(dòng)態(tài)添加19、以下哪項(xiàng)是HTML5新增的語(yǔ)義化標(biāo)簽?A.divB.spanC.sectionD.font20、在HTTP協(xié)議中,GET與POST請(qǐng)求的主要區(qū)別不包括以下哪一項(xiàng)?A.GET請(qǐng)求參數(shù)在URL中可見(jiàn),POST在請(qǐng)求體中B.GET請(qǐng)求比POST更安全C.GET請(qǐng)求有長(zhǎng)度限制,POST無(wú)嚴(yán)格限制D.GET用于獲取數(shù)據(jù),POST用于提交數(shù)據(jù)21、在JavaScript中,以下哪個(gè)方法可以用于檢測(cè)一個(gè)對(duì)象是否擁有某個(gè)自有屬性(不包括繼承屬性)?A.Object.keys()B.hasOwnProperty()C.in操作符D.Object.getOwnPropertySymbols()22、在CSS中,以下哪種方式可以實(shí)現(xiàn)元素的水平垂直居中,且適用于未知寬高的塊級(jí)元素?A.margin:0auto;B.position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);C.display:inline-block;text-align:center;D.float:center;23、以下關(guān)于HTTP狀態(tài)碼的描述,哪一項(xiàng)是正確的?A.301表示臨時(shí)重定向B.403表示請(qǐng)求資源未找到C.500表示服務(wù)器內(nèi)部錯(cuò)誤D.200表示請(qǐng)求已接受,正在處理24、在Vue.js中,以下哪個(gè)選項(xiàng)能正確實(shí)現(xiàn)父組件向子組件傳遞數(shù)據(jù)?A.使用events和$emitB.使用propsC.使用v-model雙向綁定D.使用localStorage25、關(guān)于JavaScript中的閉包,以下說(shuō)法錯(cuò)誤的是?A.閉包可以訪問(wèn)外部函數(shù)的變量B.閉包會(huì)導(dǎo)致外部函數(shù)的變量無(wú)法被垃圾回收C.閉包必須通過(guò)返回函數(shù)的方式創(chuàng)建D.閉包有助于實(shí)現(xiàn)數(shù)據(jù)私有化26、在JavaScript中,下列哪個(gè)方法可以用于檢測(cè)一個(gè)變量是否為數(shù)組類型?A.typeofvariable==="array"B.variableinstanceofArrayC.Array.isType(variable)D.Ototype.toString.call(variable)==="[objectObject]"27、在CSS布局中,以下哪種方式可以實(shí)現(xiàn)一個(gè)元素在父容器中水平垂直居中?A.position:absolute;left:50%;top:50%B.position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)C.position:relative;margin:autoD.display:inline-block;text-align:center28、關(guān)于HTTP狀態(tài)碼,下列哪個(gè)表示“資源未找到”?A.200B.301C.404D.50029、Vue.js中,以下哪個(gè)生命周期鉤子在組件DOM渲染完成后執(zhí)行,適合進(jìn)行DOM操作?A.createdB.beforeMountC.mountedD.updated30、以下關(guān)于JavaScript事件循環(huán)(EventLoop)的描述,正確的是?A.宏任務(wù)執(zhí)行完才執(zhí)行所有微任務(wù)B.setTimeout屬于微任務(wù)C.Promise.then屬于宏任務(wù)D.微任務(wù)在當(dāng)前調(diào)用棧清空后、下一個(gè)宏任務(wù)執(zhí)行前執(zhí)行二、多項(xiàng)選擇題下列各題有多個(gè)正確答案,請(qǐng)選出所有正確選項(xiàng)(共15題)31、在JavaScript中,以下哪些方式可以實(shí)現(xiàn)跨域請(qǐng)求?A.使用JSONPB.設(shè)置CORS(跨域資源共享)響應(yīng)頭C.利用postMessageAPID.通過(guò)iframe直接訪問(wèn)不同源的DOM32、關(guān)于HTML5語(yǔ)義化標(biāo)簽,下列說(shuō)法正確的有哪些?A.`<article>`表示文檔、頁(yè)面或應(yīng)用程序中獨(dú)立的內(nèi)容塊B.`<section>`通常用于定義文檔中的章節(jié)或區(qū)域C.`<div>`是語(yǔ)義化標(biāo)簽,可替代所有其他塊級(jí)元素D.`<nav>`用于定義頁(yè)面的導(dǎo)航鏈接區(qū)域33、下列關(guān)于CSS盒模型的描述,哪些是正確的?A.標(biāo)準(zhǔn)盒模型中,width僅包含內(nèi)容區(qū)域的寬度B.IE盒模型中,width包含padding和borderC.可通過(guò)box-sizing:border-box改變盒模型計(jì)算方式D.margin始終不參與元素總寬度的計(jì)算34、在Vue.js框架中,以下關(guān)于組件通信的描述正確的是哪些?A.父組件通過(guò)props向子組件傳遞數(shù)據(jù)B.子組件通過(guò)$emit觸發(fā)事件向父組件通信C.使用Vuex可實(shí)現(xiàn)任意組件間的全局狀態(tài)管理D.ref可以直接訪問(wèn)子組件實(shí)例的所有私有方法35、關(guān)于HTTP狀態(tài)碼,下列說(shuō)法正確的有哪些?A.200表示請(qǐng)求成功,資源已正常返回B.301表示永久重定向,瀏覽器應(yīng)更新URLC.404表示服務(wù)器內(nèi)部錯(cuò)誤,無(wú)法處理請(qǐng)求D.500表示服務(wù)器在處理請(qǐng)求時(shí)發(fā)生內(nèi)部錯(cuò)誤36、在JavaScript中,下列哪些方式可以實(shí)現(xiàn)跨域請(qǐng)求?A.使用JSONPB.設(shè)置CORS(跨域資源共享)頭C.使用postMessage方法D.通過(guò)iframe嵌套直接訪問(wèn)父窗口變量37、關(guān)于CSS盒模型,下列說(shuō)法正確的有哪些?A.標(biāo)準(zhǔn)盒模型中,width僅包括內(nèi)容區(qū)域?qū)挾菳.IE盒模型中,width包含內(nèi)容、內(nèi)邊距和邊框C.可通過(guò)box-sizing:border-box切換盒模型類型D.外邊距合并只發(fā)生在相鄰的垂直外邊距之間38、下列哪些方法可用于防止JavaScript中的內(nèi)存泄漏?A.及時(shí)解除事件監(jiān)聽(tīng)器B.避免全局變量濫用C.定期使用window.reload()刷新頁(yè)面D.清除不再使用的定時(shí)器39、關(guān)于Vue.js的響應(yīng)式原理,下列描述正確的有哪些?A.Vue2使用Object.defineProperty實(shí)現(xiàn)數(shù)據(jù)劫持B.Vue3采用Proxy替代了Object.definePropertyC.響應(yīng)式僅對(duì)對(duì)象屬性的讀寫進(jìn)行監(jiān)聽(tīng)D.數(shù)組的push、pop等方法在Vue中已被重寫以觸發(fā)更新40、下列關(guān)于HTTP緩存機(jī)制的說(shuō)法,正確的有哪些?A.強(qiáng)緩存優(yōu)先于協(xié)商緩存執(zhí)行B.Expires和Cache-Control均可設(shè)置強(qiáng)緩存時(shí)間C.ETag用于協(xié)商緩存,由服務(wù)器生成D.Last-Modified可完全替代ETag41、在JavaScript中,關(guān)于變量提升(Hoisting)的描述,以下哪些說(shuō)法是正確的?A.使用var聲明的變量會(huì)被提升到其作用域的頂部B.let和const也存在變量提升,但不會(huì)被初始化C.函數(shù)聲明會(huì)被提升,且函數(shù)表達(dá)式不會(huì)被提升D.變量提升會(huì)導(dǎo)致所有變量在代碼執(zhí)行前就分配內(nèi)存和賦值42、關(guān)于CSS盒模型,下列描述正確的是哪些?A.標(biāo)準(zhǔn)盒模型中,元素寬度等于content的寬度B.IE盒模型中,width包含了padding和borderC.設(shè)置box-sizing:border-box后,padding和border將包含在width內(nèi)D.所有瀏覽器默認(rèn)使用標(biāo)準(zhǔn)盒模型43、以下關(guān)于HTTP狀態(tài)碼的描述,哪些是正確的?A.200表示請(qǐng)求成功,資源已正常返回B.301表示臨時(shí)重定向,客戶端應(yīng)使用新URLC.404表示請(qǐng)求的資源未找到D.500表示服務(wù)器內(nèi)部錯(cuò)誤,無(wú)法完成請(qǐng)求44、在前端開(kāi)發(fā)中,哪些方式可以實(shí)現(xiàn)頁(yè)面性能優(yōu)化?A.使用雪碧圖減少HTTP請(qǐng)求次數(shù)B.將CSS放在頁(yè)面底部以加快首屏渲染C.啟用Gzip壓縮傳輸資源D.使用防抖(debounce)優(yōu)化頻繁觸發(fā)的事件45、關(guān)于Vue.js響應(yīng)式原理的描述,以下哪些是正確的?A.Vue2使用Object.defineProperty實(shí)現(xiàn)數(shù)據(jù)劫持B.Vue3改用Proxy實(shí)現(xiàn)響應(yīng)式,解決了對(duì)象屬性增刪監(jiān)聽(tīng)問(wèn)題C.所有數(shù)據(jù)在初始化時(shí)都會(huì)被遞歸劫持為響應(yīng)式D.修改響應(yīng)式數(shù)組的length屬性可以觸發(fā)視圖更新三、判斷題判斷下列說(shuō)法是否正確(共10題)46、在JavaScript中,使用`var`聲明的變量會(huì)被提升到其作用域的頂部,而`let`和`const`聲明的變量不會(huì)發(fā)生提升。A.正確B.錯(cuò)誤47、CSS中的`flex`布局默認(rèn)會(huì)使子元素在主軸上等分容器空間。A.正確B.錯(cuò)誤48、在Vue.js中,`v-model`本質(zhì)上是`v-bind:value`和`v-on:input`的語(yǔ)法糖。A.正確B.錯(cuò)誤49、HTTP狀態(tài)碼304表示服務(wù)器接收到請(qǐng)求,但資源未修改,客戶端可繼續(xù)使用緩存版本。A.正確B.錯(cuò)誤50、在HTML5中,`<section>`元素可以用于替代`<div>`標(biāo)簽以提升語(yǔ)義化結(jié)構(gòu)。A.正確B.錯(cuò)誤51、在JavaScript中,`null`和`undefined`在進(jìn)行雙等號(hào)(==)比較時(shí)返回`true`。A.正確B.錯(cuò)誤52、CSS中的`flex`布局默認(rèn)會(huì)使子元素在主軸上居中對(duì)齊。A.正確B.錯(cuò)誤53、Vue.js中的`v-model`本質(zhì)上是指令語(yǔ)法糖,其底層通過(guò)`v-bind`和`v-on`實(shí)現(xiàn)數(shù)據(jù)綁定。A.正確B.錯(cuò)誤54、HTTP狀態(tài)碼304表示服務(wù)器接收到請(qǐng)求,但資源未修改,客戶端應(yīng)使用本地緩存。A.正確B.錯(cuò)誤55、在React中,組件的`state`更新是同步的,每次調(diào)用`setState`都會(huì)立即觸發(fā)重新渲染。A.正確B.錯(cuò)誤

參考答案及解析1.【參考答案】A【解析】hasOwnProperty()是Ototype上的方法,用于判斷對(duì)象是否包含指定的自有屬性(不包括原型鏈上的屬性)。in操作符會(huì)檢查屬性是否存在于對(duì)象或其原型鏈中,無(wú)法區(qū)分是否為自有屬性。Object.keys()返回所有可枚舉的自有屬性名數(shù)組,但不直接用于檢測(cè)單個(gè)屬性。propertyIsEnumerable()除了要求是自有屬性外,還要求該屬性可枚舉,條件更嚴(yán)格。因此,檢測(cè)自有屬性最準(zhǔn)確的方法是hasOwnProperty()。2.【參考答案】A【解析】對(duì)于寬高固定的元素,使用絕對(duì)定位配合top:50%;left:50%;margin-top和margin-left為負(fù)的一半寬高可實(shí)現(xiàn)居中,但更簡(jiǎn)潔的方式是使用`position:absolute;top:0;bottom:0;left:0;right:0;margin:auto;`,此時(shí)margin:auto會(huì)自動(dòng)計(jì)算居中位置。float不支持center值,text-align只影響行內(nèi)內(nèi)容水平居中,position:fixed僅改變定位基準(zhǔn),不自動(dòng)居中。因此A正確。3.【參考答案】B【解析】Vue2使用Object.defineProperty()對(duì)數(shù)據(jù)對(duì)象的屬性進(jìn)行劫持,在getter中收集依賴,在setter中觸發(fā)更新,實(shí)現(xiàn)響應(yīng)式。Vue3改用Proxy,但選項(xiàng)C錯(cuò)誤地聲稱其兼容所有瀏覽器(Proxy不支持IE)。setInterval不用于響應(yīng)式機(jī)制,DOM事件是視圖層行為,不驅(qū)動(dòng)核心響應(yīng)式邏輯。故正確答案為B。4.【參考答案】A【解析】301MovedPermanently表示請(qǐng)求的資源已被永久分配新的URI,客戶端應(yīng)更新書簽。302Found表示臨時(shí)重定向,資源只是臨時(shí)移動(dòng)。403Forbidden表示服務(wù)器拒絕執(zhí)行請(qǐng)求,404NotFound表示資源不存在。搜索引擎會(huì)將301重定向的權(quán)重轉(zhuǎn)移至新地址,而302不會(huì)。因此,永久移動(dòng)應(yīng)使用301,答案為A。5.【參考答案】C【解析】`<main>`標(biāo)簽用于定義文檔或應(yīng)用的主體內(nèi)容,具有明確的語(yǔ)義,且一個(gè)頁(yè)面通常只使用一次(除非在不同`hidden`狀態(tài)下切換)。`<section>`表示文檔中的一個(gè)區(qū)域,`<article>`用于可獨(dú)立分發(fā)的內(nèi)容,如文章、帖子。`<div>`是無(wú)語(yǔ)義的通用容器。對(duì)于頁(yè)面核心內(nèi)容,`<main>`最具語(yǔ)義準(zhǔn)確性,且有利于無(wú)障礙訪問(wèn),故正確答案為C。6.【參考答案】C【解析】JavaScript中,加法運(yùn)算從左到右執(zhí)行。首先,1+'2'會(huì)觸發(fā)字符串拼接,結(jié)果為字符串"12";接著"12"+3得到"123";然后進(jìn)行減法運(yùn)算:"123"-4,此時(shí)字符串被隱式轉(zhuǎn)換為數(shù)字123,123-4=119。減法不會(huì)導(dǎo)致字符串拼接,而是強(qiáng)制類型轉(zhuǎn)換為數(shù)值運(yùn)算。因此輸出119,答案為C。7.【參考答案】C【解析】在現(xiàn)代前端開(kāi)發(fā)中,使用flexbox(display:flex;justify-content:center;align-items:center)是實(shí)現(xiàn)水平垂直居中的最簡(jiǎn)潔、兼容性好且語(yǔ)義清晰的方式。它無(wú)需知道元素尺寸,適應(yīng)性強(qiáng),代碼簡(jiǎn)潔。而絕對(duì)定位加負(fù)margin需預(yù)知尺寸;float和table-cell方式已過(guò)時(shí),布局復(fù)雜且不易維護(hù)。因此推薦使用flexbox,答案為C。8.【參考答案】B【解析】Vue2.x的響應(yīng)式系統(tǒng)核心是通過(guò)Object.defineProperty方法,劫持對(duì)象屬性的getter和setter,在數(shù)據(jù)讀取時(shí)收集依賴,數(shù)據(jù)修改時(shí)通知更新。Vue3則改用Proxy實(shí)現(xiàn)。選項(xiàng)A、C、D均不符合Vue響應(yīng)式機(jī)制原理。因此正確答案為B。9.【參考答案】C【解析】HTTP狀態(tài)碼404表示客戶端請(qǐng)求的資源在服務(wù)器上不存在或無(wú)法找到,是最常見(jiàn)的錯(cuò)誤狀態(tài)碼之一。200表示請(qǐng)求成功;301表示永久重定向;500表示服務(wù)器內(nèi)部錯(cuò)誤。前端開(kāi)發(fā)中常需處理404頁(yè)面以提升用戶體驗(yàn)。因此答案為C。10.【參考答案】C【解析】JavaScript事件循環(huán)中,每次宏任務(wù)執(zhí)行完成后,會(huì)清空當(dāng)前所有的微任務(wù)隊(duì)列。微任務(wù)包括Promise.then、MutationObserver等;宏任務(wù)包括setTimeout、setInterval、I/O等。因此Promise回調(diào)屬于微任務(wù),會(huì)在本輪宏任務(wù)結(jié)束后立即執(zhí)行。選項(xiàng)A順序錯(cuò)誤,B中setTimeout是宏任務(wù),D描述不準(zhǔn)確。故正確答案為C。11.【參考答案】C【解析】`typeof`對(duì)數(shù)組返回"object",無(wú)法準(zhǔn)確判斷;`instanceof`在跨全局對(duì)象(如iframe)時(shí)可能失效;`constructor`可被修改,可靠性低。`Array.isArray()`是ES5標(biāo)準(zhǔn)方法,專用于檢測(cè)數(shù)組類型,兼容性好且最安全可靠,推薦使用。12.【參考答案】C【解析】標(biāo)準(zhǔn)盒模型(content-box)中,width僅指內(nèi)容區(qū),padding和border額外增加;IE模型則使width包含padding和border。`box-sizing:border-box`使元素寬度包含padding和border,更利于布局控制,默認(rèn)值為content-box。選項(xiàng)C正確。13.【參考答案】C【解析】200表示請(qǐng)求成功;301為永久重定向;404表示請(qǐng)求資源未找到,屬于客戶端錯(cuò)誤(4xx類);500為服務(wù)器內(nèi)部錯(cuò)誤。4xx狀態(tài)碼專用于客戶端請(qǐng)求錯(cuò)誤,404是最常見(jiàn)的客戶端錯(cuò)誤之一。14.【參考答案】D【解析】`$attrs`包含父組件傳遞但未在props中聲明的所有屬性,包括class和style(除非子組件聲明接收)。props用于父?jìng)髯樱?emit用于子傳父,Vuex用于全局狀態(tài)管理。D項(xiàng)錯(cuò)誤,class和style默認(rèn)包含在$attrs中。15.【參考答案】B【解析】雖然內(nèi)聯(lián)CSS可減少請(qǐng)求,但過(guò)大的內(nèi)聯(lián)樣式會(huì)增加HTML體積,阻礙頁(yè)面渲染,不利于首屏優(yōu)化。合理做法是提取關(guān)鍵CSS內(nèi)聯(lián),其余異步加載。懶加載、資源壓縮、緩存均有效提升加載速度,B項(xiàng)做法不科學(xué),可能適得其反。16.【參考答案】B【解析】typeof操作符無(wú)法準(zhǔn)確判斷數(shù)組,它對(duì)數(shù)組返回"object";而instanceof可以檢測(cè)構(gòu)造函數(shù),通過(guò)`arrinstanceofArray`可判斷是否為數(shù)組。isObject()和hasOwnProperty()都不是用于類型檢測(cè)數(shù)組的正確方法。因此正確答案是B。17.【參考答案】C【解析】flexbox布局通過(guò)設(shè)置父容器為`display:flex;justify-content:center;align-items:center;`可輕松實(shí)現(xiàn)未知尺寸元素的居中,代碼簡(jiǎn)潔且兼容現(xiàn)代瀏覽器。position配合負(fù)margin需知尺寸,table-cell已過(guò)時(shí)。float無(wú)法實(shí)現(xiàn)垂直居中。C為最優(yōu)解。18.【參考答案】C【解析】Vue2使用Object.defineProperty,Vue3改用Proxy。A、B說(shuō)法顛倒。Vue無(wú)法自動(dòng)追蹤對(duì)象屬性的動(dòng)態(tài)添加,需使用Vue.set或this.$set。data中聲明的屬性才能被代理并追蹤,故C正確。19.【參考答案】C【解析】HTML5引入了多個(gè)語(yǔ)義化標(biāo)簽,如`<header>`、`<nav>`、`<section>`、`<article>`等,用于增強(qiáng)頁(yè)面結(jié)構(gòu)的可讀性和SEO。div和span是通用容器,無(wú)語(yǔ)義;font為過(guò)時(shí)標(biāo)簽。section用于定義文檔中的章節(jié)或區(qū)域,屬于HTML5新增語(yǔ)義標(biāo)簽。20.【參考答案】B【解析】雖然POST數(shù)據(jù)不顯示在URL中,但安全性取決于是否使用HTTPS。GET和POST本身都不提供加密,因此“更安全”是誤解。A、C、D均為正確區(qū)別。真正安全需依賴HTTPS,故B說(shuō)法錯(cuò)誤,是本題答案。21.【參考答案】B【解析】hasOwnProperty()是Ototype上的方法,用于判斷對(duì)象是否包含指定的自有屬性,不包括原型鏈上的繼承屬性。Object.keys()返回所有可枚舉自有屬性的字符串?dāng)?shù)組,但不能直接用于檢測(cè)單個(gè)屬性;in操作符會(huì)檢查自有和繼承屬性;Object.getOwnPropertySymbols()僅返回符號(hào)屬性,不適用于常規(guī)屬性檢測(cè)。因此,正確答案為B。22.【參考答案】B【解析】選項(xiàng)B使用絕對(duì)定位將元素移至父容器50%位置,再通過(guò)transform平移自身寬高的一半,實(shí)現(xiàn)精準(zhǔn)居中,不受元素尺寸影響。A僅實(shí)現(xiàn)水平居中;C適用于行內(nèi)元素或文本;D中不存在float:center語(yǔ)法。該方法兼容性好,是常用居中方案,故選B。23.【參考答案】C【解析】500表示服務(wù)器在處理請(qǐng)求時(shí)發(fā)生內(nèi)部錯(cuò)誤,屬于服務(wù)端問(wèn)題。301是永久重定向,302才是臨時(shí)重定向;403表示禁止訪問(wèn)(權(quán)限不足),404才是資源未找到;200表示請(qǐng)求成功,202表示請(qǐng)求已接受但未處理完成。因此,僅C正確。24.【參考答案】B【解析】Vue中父組件通過(guò)props向子組件傳遞數(shù)據(jù),是單向數(shù)據(jù)流的標(biāo)準(zhǔn)方式。events與$emit用于子傳父;v-model本質(zhì)是prop+event的語(yǔ)法糖;localStorage屬于瀏覽器存儲(chǔ),不用于組件通信。因此正確答案為B。25.【參考答案】C【解析】閉包是指有權(quán)訪問(wèn)另一個(gè)函數(shù)作用域中變量的函數(shù),常見(jiàn)于函數(shù)返回函數(shù),但并非必須返回。例如,在定時(shí)器或事件監(jiān)聽(tīng)中引用外部變量也形成閉包。閉包確實(shí)能訪問(wèn)外部變量、延長(zhǎng)變量生命周期、實(shí)現(xiàn)私有化。因此C項(xiàng)“必須返回函數(shù)”說(shuō)法錯(cuò)誤,為正確答案。26.【參考答案】B【解析】typeof無(wú)法準(zhǔn)確判斷數(shù)組,返回的是"object";instanceofArray可以正確識(shí)別數(shù)組類型,前提是跨執(zhí)行環(huán)境時(shí)可能存在限制;Ototype.toString.call更可靠,但選項(xiàng)D的比較值錯(cuò)誤,應(yīng)為"[objectArray]"。綜合來(lái)看,B是常規(guī)開(kāi)發(fā)中最常用且正確的選項(xiàng)。27.【參考答案】B【解析】A僅移動(dòng)到50%位置但未回退自身寬高一半,無(wú)法精確居中;C用于塊級(jí)元素水平居中,不支持垂直;D僅對(duì)內(nèi)聯(lián)元素水平居中有效。B通過(guò)translate(-50%,-50%)回退自身尺寸一半,可實(shí)現(xiàn)精準(zhǔn)居中,是常用方案。28.【參考答案】C【解析】200表示請(qǐng)求成功;301為永久重定向;404表示客戶端請(qǐng)求的資源在服務(wù)器上不存在;500為服務(wù)器內(nèi)部錯(cuò)誤。404是前端開(kāi)發(fā)中最常見(jiàn)的錯(cuò)誤狀態(tài)碼之一,通常與路由或資源路徑錯(cuò)誤有關(guān)。29.【參考答案】C【解析】created階段數(shù)據(jù)已初始化但DOM未生成;beforeMount在掛載前;mounted在組件掛載完成后執(zhí)行,此時(shí)DOM已可用,適合進(jìn)行DOM操作或初始化第三方庫(kù);updated在數(shù)據(jù)更新后觸發(fā),適用于響應(yīng)式更新操作。mounted是最常用的DOM操作時(shí)機(jī)。30.【參考答案】D【解析】事件循環(huán)中,先執(zhí)行同步代碼,調(diào)用棧清空后,優(yōu)先處理所有微任務(wù)(如Promise.then),再執(zhí)行下一個(gè)宏任務(wù)(如setTimeout)。setTimeout是宏任務(wù),Promise.then是微任務(wù)。微任務(wù)具有更高優(yōu)先級(jí),D描述準(zhǔn)確。31.【參考答案】A、B、C【解析】JSONP利用script標(biāo)簽不受同源策略限制的特性,實(shí)現(xiàn)GET方式的跨域請(qǐng)求;CORS是W3C標(biāo)準(zhǔn),通過(guò)服務(wù)器設(shè)置響應(yīng)頭如Access-Control-Allow-Origin,允許瀏覽器跨域訪問(wèn);postMessage是HTML5提供的跨文檔通信API,可在不同窗口或iframe間安全傳遞消息。而D選項(xiàng)中,直接訪問(wèn)不同源iframe的DOM會(huì)受同源策略阻止,無(wú)法實(shí)現(xiàn),故錯(cuò)誤。32.【參考答案】A、B、D【解析】HTML5語(yǔ)義化標(biāo)簽增強(qiáng)了頁(yè)面結(jié)構(gòu)的可讀性和可訪問(wèn)性。`<article>`代表獨(dú)立內(nèi)容,如博客文章;`<section>`表示文檔中的一個(gè)區(qū)域或章節(jié),通常包含標(biāo)題;`<nav>`專用于導(dǎo)航鏈接集合。而`<div>`無(wú)語(yǔ)義,僅為布局容器,不能替代語(yǔ)義標(biāo)簽,故C錯(cuò)誤。33.【參考答案】A、B、C【解析】標(biāo)準(zhǔn)盒模型中,width指內(nèi)容寬度,總寬=width+padding+border+margin;IE模型中,width已包含padding和border,更便于布局控制。box-sizing:border-box可讓元素使用IE模型計(jì)算方式,提升響應(yīng)式設(shè)計(jì)效率。margin雖不計(jì)入元素占用的“內(nèi)容+邊框”寬度,但影響布局空間,D表述不準(zhǔn)確。34.【參考答案】A、B、C【解析】props是父?jìng)髯拥膯蜗驍?shù)據(jù)流方式;$emit用于子組件觸發(fā)自定義事件,父組件監(jiān)聽(tīng)實(shí)現(xiàn)回調(diào);Vuex作為狀態(tài)管理模式,支持跨層級(jí)組件共享狀態(tài)。ref雖可獲取子組件實(shí)例,但應(yīng)謹(jǐn)慎使用,且不推薦調(diào)用私有方法,破壞封裝性,D表述不當(dāng)。35.【參考答案】A、B、D【解析】200表示成功返回請(qǐng)求資源;301為永久重定向,告知客戶端資源已移至新URL,應(yīng)更新書簽;404表示客戶端請(qǐng)求的資源不存在,而非服務(wù)器錯(cuò)誤;500表示服務(wù)器端代碼異常導(dǎo)致請(qǐng)求失敗。C選項(xiàng)將404與500混淆,故錯(cuò)誤。36.【參考答案】A、B、C【解析】JSONP利用script標(biāo)簽不受同源策略限制的特性,通過(guò)回調(diào)函數(shù)獲取數(shù)據(jù),適用于GET請(qǐng)求。CORS是瀏覽器支持的標(biāo)準(zhǔn)機(jī)制,服務(wù)器設(shè)置Access-Control-Allow-Origin等響應(yīng)頭后,允許特定源的跨域請(qǐng)求。postMessage是HTML5提供的跨文檔通信API,可用于不同源的窗口間安全傳遞消息。D選項(xiàng)錯(cuò)誤,因同源策略限制,跨域iframe無(wú)法直接訪問(wèn)父窗口或子窗口的變量,會(huì)觸發(fā)安全異常。37.【參考答案】A、B、C【解析】標(biāo)準(zhǔn)盒模型(content-box)中width指內(nèi)容寬度,padding和border額外計(jì)算;IE盒模型(border-box)中width包含content、padding和border,更利于布局控制。box-sizing屬性可切換兩者。外邊距合并不僅發(fā)生在垂直方向,但水平方向在塊級(jí)元素中不合并,D項(xiàng)表述不嚴(yán)謹(jǐn),故不選。38.【參考答案】A、B、D【解析】事件監(jiān)聽(tīng)器若未移除,會(huì)保持對(duì)DOM節(jié)點(diǎn)的引用,阻止垃圾回收;全局變量生命周期長(zhǎng),易造成數(shù)據(jù)滯留;setInterval或setTimeout未清除會(huì)持續(xù)執(zhí)行并引用外部變量,導(dǎo)致內(nèi)存無(wú)法釋放。C項(xiàng)reload()雖可重置內(nèi)存,但非預(yù)防手段,且影響用戶體驗(yàn),不屬于內(nèi)存管理的推薦做法。39.【參考答案】A、B、D【解析】Vue2通過(guò)Object.defineProperty劫持對(duì)象屬性的getter/setter,實(shí)現(xiàn)響應(yīng)式,但對(duì)新增屬性或數(shù)組下標(biāo)修改無(wú)法監(jiān)聽(tīng)。Vue3使用Proxy,可監(jiān)聽(tīng)整個(gè)對(duì)象,解決上述問(wèn)題。Vue對(duì)數(shù)組的7個(gè)變更方法(如push、splice)進(jìn)行了重寫,使其能觸發(fā)視圖更新。C項(xiàng)錯(cuò)誤,因響應(yīng)式不僅監(jiān)聽(tīng)讀寫,還涉及依賴收集和派發(fā)更新。40.【參考答案】A、B、C【解析】瀏覽器先判斷強(qiáng)緩存(如Cache-Control、Expires),命中則直接使用本地資源;未命中則發(fā)起協(xié)商緩存請(qǐng)求。ETag是資源唯一標(biāo)識(shí),服務(wù)器通過(guò)If-None-Match驗(yàn)證是否變更,適用于精確校驗(yàn)。Last-Modified精度為秒,且在文件修改但內(nèi)容未變時(shí)可能誤判,無(wú)法完全替代ETag,故D錯(cuò)誤。41.【參考答案】A、B、C【解析】JavaScript中,var聲明的變量會(huì)被提升至作用域頂部,但僅聲明提升,賦值保留在原位。let和const同樣存在提升現(xiàn)象,但進(jìn)入“暫時(shí)性死區(qū)”,直到聲明語(yǔ)句執(zhí)行前不可訪問(wèn)。函數(shù)聲明整體提升,可提前調(diào)用;函數(shù)表達(dá)式僅變量名提升,函數(shù)體不提升。D錯(cuò)誤,因?yàn)樘嵘簧婕奥暶?,不包含賦值。42.【參考答案】A、B、C【解析】標(biāo)準(zhǔn)盒模型中,width僅指content部分,padding、border和margin另算。IE盒模型將padding和border計(jì)入width。通過(guò)box-sizing:border-box可切換為此模式,便于布局控制。雖然現(xiàn)代瀏覽器默認(rèn)為content-box(標(biāo)準(zhǔn)模型),但D表述“所有”過(guò)于絕對(duì),部分舊版本或兼容模式例外,故不選。43.【參考答案】A、C、D【解析】200表示成功響應(yīng);404代表客戶端請(qǐng)求的資源不存在;500是服務(wù)器端代碼異常導(dǎo)致的錯(cuò)誤。301是永久重定向,而非臨時(shí),臨時(shí)重定向應(yīng)為302或307,故B錯(cuò)誤。掌握常見(jiàn)狀態(tài)碼有助于前后端聯(lián)調(diào)與問(wèn)題排查。44.【參考答案】A、C、D【解析】雪碧圖合并小圖標(biāo),減少請(qǐng)求;Gzip壓縮可顯著減小資源體積;防抖控制事件頻率,提升響應(yīng)性能。而CSS應(yīng)置于head中,盡早解析構(gòu)建CSSOM,若放底部會(huì)導(dǎo)致頁(yè)面重繪甚至閃爍,影響渲染,故B錯(cuò)誤。45.【參考答案】A、B、D【解析】Vue2通過(guò)Object.defineProperty劫持getter/setter,但無(wú)法監(jiān)聽(tīng)屬性增刪;Vue3使用Proxy解決了該局限。C錯(cuò)誤,因?yàn)橹挥性赿ata中定義的數(shù)據(jù)才會(huì)被處理,且Vue2對(duì)數(shù)組索引直接賦值和length修改的監(jiān)聽(tīng)有限,但通過(guò)重寫數(shù)組方法實(shí)現(xiàn)部分響應(yīng)。length修改在Vue2中也可觸發(fā)更新,故D正確。46.【參考答案】B【解析】該說(shuō)法錯(cuò)誤。`let`和`const`聲明的變量同樣存在“提升”(hoisting),但與`var`不同的是,它們被置于“暫時(shí)性死區(qū)”(TemporalDeadZone),在聲明前訪問(wèn)會(huì)報(bào)錯(cuò)。而`var`提升后初始化為`undefined`。因此,三者均有提升行為,但處理方式不同,故判斷為錯(cuò)誤。47.【參考答案】B【解析】該說(shuō)法錯(cuò)誤。`flex`布局中,子元素的默認(rèn)排列方式由`flex-direction:row`決定,但并不會(huì)自動(dòng)等分空間。只有當(dāng)設(shè)置`flex:1`或類似屬性時(shí),子元素才會(huì)按比例分配剩余空間。默認(rèn)情況下,子元素僅按內(nèi)容大小排列,故判斷為錯(cuò)誤。48.【參考答案】A【解析】該說(shuō)法正確。在表單元素中,`v-model`會(huì)根據(jù)元素類型自動(dòng)展開(kāi)為`v-bind`綁定值和`v-on`監(jiān)聽(tīng)輸入事件的組合。例如在`<input>`中,`v-model`等價(jià)于同時(shí)綁定`value`并監(jiān)聽(tīng)`input`事件更新數(shù)據(jù),是典型的語(yǔ)法糖實(shí)現(xiàn),故判斷為正確。49.【參考答案】A【解析】該說(shuō)法正確。304狀態(tài)碼屬于重定向類響應(yīng),表示客戶端緩存的版本仍有效。服務(wù)器通過(guò)`If-Modified-Since`或`If-None-Match`判斷資源未變,不返回正文,節(jié)省帶寬。這是HTTP緩存機(jī)制的重要部分,故判斷為正確。50.【參考答案】A【解析】該說(shuō)法正確。`<section>`代表文檔中的一個(gè)獨(dú)立章節(jié)或功能區(qū)塊,具有明確語(yǔ)義,比`<div>`更具可讀性和SEO優(yōu)勢(shì)。但應(yīng)合理使用,僅在有明確主題時(shí)替代`<div>`,避免濫用。語(yǔ)義化是HTML5核心理念之一,故判斷為正確。51.【參考答案】A【解析】在JavaScript中,`null==undefined`返回`true`,因?yàn)殡p等號(hào)在比較時(shí)會(huì)進(jìn)行類型轉(zhuǎn)換。根據(jù)語(yǔ)言規(guī)范,`null`和`undefined`在相等性判斷中被認(rèn)為是“寬松相等”的,盡管它們數(shù)據(jù)類型不同(`null`為對(duì)象類型,`undefined`為undefined類型),但這是JavaScript設(shè)計(jì)上的特殊規(guī)則。使用嚴(yán)格相等(===)時(shí)則返回`false`,因?yàn)轭愋筒煌T摽键c(diǎn)常出現(xiàn)在前端筆試中,用于考察對(duì)類型轉(zhuǎn)換機(jī)制的理解。52.【參考答案】B【解析】`flex`容器的默認(rèn)主軸對(duì)齊方式是`flex-start`,即子元素從起始位置開(kāi)始排列,不會(huì)居中。若要實(shí)現(xiàn)居中,需顯式設(shè)置`justify-content:center`。該題考察對(duì)Flexbox默認(rèn)行為的理解,是前端開(kāi)發(fā)中的高頻基礎(chǔ)知識(shí)點(diǎn),許多開(kāi)發(fā)者易因?qū)嶋H開(kāi)發(fā)中常使用居中而誤記默認(rèn)值。53.【參考答案】A【解析】`v-model`在表單元素上是`v-bind:value`和`v-on:input`的語(yǔ)法糖。例如在`<input>`中,`v-model`會(huì)自動(dòng)監(jiān)聽(tīng)輸入事件并更新綁定的數(shù)據(jù),簡(jiǎn)化了雙向綁定的寫法。在自定義組件中也可通過(guò)`model`選項(xiàng)或`props`與`emit`配合實(shí)現(xiàn)。該機(jī)制是Vue核心特性之一,常作為筆試考查點(diǎn)。54.【參考答案】A【解析】304(NotModified)是HTTP重定向狀態(tài)碼之一,由服務(wù)器返回,表示客戶端緩存的版本仍有效。它通常出現(xiàn)在帶有`If-Modified-Since`或`If-None-Match`頭的請(qǐng)求中。服務(wù)器不返回響應(yīng)體,節(jié)省帶寬。該狀態(tài)碼是前端性能優(yōu)化與緩存機(jī)制中的重要知識(shí)點(diǎn),常出現(xiàn)在網(wǎng)絡(luò)相關(guān)考題中。55.【參考答案】B【解析】React中`setState`在多數(shù)情況下是異步的,目的是批量更新以提升性能。調(diào)用后不會(huì)立即改變state,也不會(huì)立刻觸發(fā)render。在合成事件和生命周期中異步處理,但在原生事件或setTimeout中可能表現(xiàn)為同步。該特性常被誤解,是React筆試高頻陷阱題,需深入理解其更新機(jī)制。

2025四川九強(qiáng)通信科技有限公司招聘前端開(kāi)發(fā)工程師等崗位21人筆試歷年??键c(diǎn)試題專練附帶答案詳解(第2套)一、單項(xiàng)選擇題下列各題只有一個(gè)正確答案,請(qǐng)選出最恰當(dāng)?shù)倪x項(xiàng)(共30題)1、在JavaScript中,下列哪項(xiàng)能夠正確判斷一個(gè)變量是否為數(shù)組類型?A.typeofvariable==='array'B.variableinstanceofArrayC.Array.isArray(variable)===trueD.Ototype.toString.call(variable)==='[objectObject]'2、關(guān)于CSS盒模型,下列描述正確的是?A.標(biāo)準(zhǔn)盒模型中,元素的寬度包含padding和borderB.在box-sizing:border-box下,設(shè)置width包括content、padding和borderC.margin始終不參與盒模型的尺寸計(jì)算D.所有瀏覽器默認(rèn)使用W3C標(biāo)準(zhǔn)盒模型3、以下關(guān)于HTTP狀態(tài)碼的描述,哪一項(xiàng)是正確的?A.301表示臨時(shí)重定向,搜索引擎會(huì)保留原URL索引B.403表示請(qǐng)求資源未找到,通常由路徑錯(cuò)誤引起C.500表示服務(wù)器內(nèi)部錯(cuò)誤,無(wú)法完成請(qǐng)求D.206用于表示請(qǐng)求成功并返回完整響應(yīng)體4、在Vue.js中,關(guān)于組件通信的說(shuō)法正確的是?A.子組件通過(guò)props接收父組件傳遞的數(shù)據(jù)B.父組件通過(guò)$emit觸發(fā)子組件的方法C.任意組件間通信必須使用VuexD.v-model在自定義組件中只能綁定value屬性5、關(guān)于JavaScript事件循環(huán)(EventLoop)的執(zhí)行順序,下列說(shuō)法正確的是?A.宏任務(wù)執(zhí)行完后才執(zhí)行微任務(wù)B.setTimeout屬于微任務(wù)隊(duì)列C.Promise的then回調(diào)屬于微任務(wù)D.同步代碼執(zhí)行前先清空微任務(wù)隊(duì)列6、在JavaScript中,下列哪項(xiàng)關(guān)于閉包的說(shuō)法是錯(cuò)誤的?A.閉包可以訪問(wèn)外部函數(shù)的變量B.閉包會(huì)導(dǎo)致內(nèi)存泄漏,因此應(yīng)完全避免使用C.閉包能夠維持函數(shù)內(nèi)部變量的存活狀態(tài)D.閉包是在函數(shù)內(nèi)部創(chuàng)建函數(shù)時(shí)形成的7、在CSS盒模型中,下列哪個(gè)屬性值不包含在“標(biāo)準(zhǔn)盒模型”的width和height計(jì)算范圍內(nèi)?A.內(nèi)容(content)B.內(nèi)邊距(padding)C.邊框(border)D.外邊距(margin)8、在Vue.js中,下列哪個(gè)指令用于實(shí)現(xiàn)表單輸入和應(yīng)用狀態(tài)之間的雙向綁定?A.v-modelB.v-bindC.v-onD.v-html9、下列關(guān)于HTTP狀態(tài)碼的描述中,哪一項(xiàng)屬于客戶端請(qǐng)求錯(cuò)誤?A.200OKB.304NotModifiedC.404NotFoundD.500InternalServerError10、在HTML5中,下列哪個(gè)語(yǔ)義化標(biāo)簽最適合用于定義頁(yè)面的主導(dǎo)航鏈接?A.<div>B.<section>C.<nav>D.<article>11、在JavaScript中,以下哪個(gè)方法可以用于檢測(cè)一個(gè)對(duì)象是否擁有某個(gè)自有屬性(非繼承屬性)?A.Object.keys()B.Object.getOwnPropertyNames()C.hasOwnProperty()D.instanceof12、在CSS布局中,以下哪種方式無(wú)法實(shí)現(xiàn)元素的水平垂直居中?A.使用position:absolute與transform:translate(-50%,-50%)B.使用display:flex,配合justify-content和align-itemsC.使用float:left并配合margin:autoD.使用grid布局并設(shè)置place-items:center13、關(guān)于HTTP緩存機(jī)制,以下哪個(gè)響應(yīng)頭主要用于控制強(qiáng)緩存?A.ExpiresB.ETagC.Last-ModifiedD.Cache-Control14、在Vue3中,用于創(chuàng)建響應(yīng)式數(shù)據(jù)的主要函數(shù)是?A.observable()B.reactive()C.defineReactive()D.ref()15、以下關(guān)于閉包的說(shuō)法中,錯(cuò)誤的是?A.閉包可以使函數(shù)內(nèi)部變量在外部被訪問(wèn)B.閉包會(huì)導(dǎo)致內(nèi)存泄漏,因此應(yīng)完全避免使用C.閉包是函數(shù)與其詞法作用域的組合D.閉包可用于實(shí)現(xiàn)私有變量16、在JavaScript中,下列哪個(gè)方法可以用于阻止事件冒泡?A.stopPropagation()B.preventDefault()C.stopImmediatePropagation()D.cancelBubble()17、關(guān)于CSS盒模型,下列描述正確的是?A.標(biāo)準(zhǔn)盒模型中,元素的寬度包含padding和borderB.IE盒模型中,width僅指內(nèi)容區(qū)域的寬度C.設(shè)置box-sizing:border-box后,width包含padding和borderD.margin始終不計(jì)入元素的總占用寬度18、Vue.js中,下列哪個(gè)選項(xiàng)正確描述了v-model的實(shí)現(xiàn)原理?A.v-model是v-bind:value和v-on:input的語(yǔ)法糖B.v-model只能用于input元素,不能用于組件C.v-model在textarea中需要通過(guò)change事件更新D.v-model默認(rèn)監(jiān)聽(tīng)blur事件進(jìn)行數(shù)據(jù)綁定19、下列關(guān)于HTTP狀態(tài)碼的描述,哪一項(xiàng)是正確的?A.301表示臨時(shí)重定向B.403表示請(qǐng)求資源未找到C.500表示服務(wù)器內(nèi)部錯(cuò)誤D.200表示請(qǐng)求已成功,但無(wú)返回內(nèi)容20、在ES6中,關(guān)于let、const與var的描述,正確的是?A.var聲明的變量存在暫時(shí)性死區(qū)B.let允許在同一作用域內(nèi)重復(fù)聲明C.const聲明的變量必須在聲明時(shí)初始化D.三者都具有塊級(jí)作用域21、在JavaScript中,下列哪個(gè)方法可以用于檢測(cè)一個(gè)變量是否為數(shù)組類型?A.typeofvariable==='array'B.variableinstanceofArrayC.Array.isObject(variable)D.Ototype.toString.call(variable)==='[objectObject]'22、在CSS布局中,下列哪種方式無(wú)法實(shí)現(xiàn)元素的水平垂直居中?A.使用position:absolute與transform:translate(-50%,-50%)B.使用display:flex,配合justify-content:center和align-items:centerC.使用float:left并結(jié)合margin:autoD.使用grid布局并設(shè)置place-items:center23、關(guān)于HTTP緩存機(jī)制,下列說(shuō)法正確的是?A.強(qiáng)緩存由Expires和Cache-Control控制,優(yōu)先級(jí)前者更高B.協(xié)商緩存中,ETag的優(yōu)先級(jí)高于Last-ModifiedC.304狀態(tài)碼表示資源未緩存,需重新請(qǐng)求D.設(shè)置Cache-Control:no-store仍可使用本地緩存24、在Vue.js中,關(guān)于組件通信方式的描述,錯(cuò)誤的是?A.父子組件可通過(guò)props向下傳遞數(shù)據(jù)B.子組件可通過(guò)$emit觸發(fā)事件向父組件通信C.使用$attrs可以繼承非props屬性D.Vuex適用于父子組件間的簡(jiǎn)單數(shù)據(jù)共享25、關(guān)于JavaScript事件循環(huán),下列說(shuō)法正確的是?A.Promise.then中的回調(diào)屬于宏任務(wù)B.setTimeout回調(diào)總比Promise.then先執(zhí)行C.微任務(wù)包括Promise.then和process.nextTick(Node環(huán)境)D.一個(gè)事件循環(huán)中可執(zhí)行多個(gè)微任務(wù)26、在JavaScript中,以下哪個(gè)方法可以用于檢測(cè)一個(gè)對(duì)象是否具有某個(gè)自有屬性(非繼承屬性)?A.Object.keys()B.hasOwnProperty()C.in操作符D.Object.getOwnPropertySymbols()27、在CSS布局中,以下哪種方式無(wú)法實(shí)現(xiàn)元素的水平垂直居中?A.使用position:absolute和transformB.使用display:flex并設(shè)置justify-content與align-itemsC.使用float:left并配合margin居中D.使用display:grid并設(shè)置place-items:center28、下列關(guān)于閉包的說(shuō)法中,哪一項(xiàng)是錯(cuò)誤的?A.閉包可以訪問(wèn)外部函數(shù)的變量B.閉包可能導(dǎo)致內(nèi)存泄漏,若不妥善管理C.閉包必須通過(guò)返回函數(shù)的方式創(chuàng)建D.閉包能夠保持對(duì)外部作用域的引用29、在Vue3中,以下哪個(gè)選項(xiàng)是使用CompositionAPI正確聲明響應(yīng)式數(shù)據(jù)的方式?A.ref(0),reactive({})B.state({}),computed()C.data(){},methods:{}D.createRef(),observe({})30、關(guān)于HTTP緩存機(jī)制,以下哪個(gè)請(qǐng)求頭主要用于控制強(qiáng)緩存?A.Cache-ControlB.ETagC.If-None-MatchD.Expires二、多項(xiàng)選擇題下列各題有多個(gè)正確答案,請(qǐng)選出所有正確選項(xiàng)(共15題)31、在JavaScript中,關(guān)于變量提升(Hoisting)的描述,下列哪些說(shuō)法是正確的?A.使用var聲明的變量會(huì)被提升到函數(shù)或全局作用域的頂部B.let和const聲明的變量不存在變量提升現(xiàn)象C.函數(shù)聲明會(huì)被提升,且函數(shù)表達(dá)式不會(huì)被提升D.變量提升會(huì)導(dǎo)致所有變量在代碼執(zhí)行前就分配內(nèi)存空間32、在CSS布局中,以下哪些方法可以實(shí)現(xiàn)元素的水平垂直居中?A.使用flex布局,設(shè)置justify-content:center和align-items:centerB.使用絕對(duì)定位配合transform:translate(-50%,-50%)C.使用position:absolute;top:0;left:0;right:0;bottom:0;margin:autoD.使用display:grid;place-items:center33、關(guān)于HTTP狀態(tài)碼,下列哪些屬于客戶端請(qǐng)求錯(cuò)誤類狀態(tài)碼?A.400BadRequestB.401UnauthorizedC.403ForbiddenD.404NotFound34、在Vue.js框架中,關(guān)于響應(yīng)式系統(tǒng)的描述,以下哪些說(shuō)法是正確的?A.Vue2使用Object.defineProperty實(shí)現(xiàn)數(shù)據(jù)劫持B.Vue3采用Proxy替代了Object.definePropertyC.響應(yīng)式數(shù)據(jù)在組件初始化后新增屬性仍能自動(dòng)追蹤D.使用this.$set可向響應(yīng)式對(duì)象中添加響應(yīng)式屬性35、關(guān)于瀏覽器的同源策略,以下哪些說(shuō)法是正確的?A.同源要求協(xié)議、域名和端口完全相同B.同源策略限制了DOM訪問(wèn)、Cookie讀寫和AJAX請(qǐng)求C.跨域資源共享(CORS)可通過(guò)服務(wù)器設(shè)置響應(yīng)頭實(shí)現(xiàn)跨域訪問(wèn)D.使用JSONP可繞過(guò)同源策略,但僅支持GET請(qǐng)求36、在JavaScript中,以下哪些方式可以實(shí)現(xiàn)變量的解構(gòu)賦值?A.數(shù)組解構(gòu)B.對(duì)象解構(gòu)C.字符串解構(gòu)D.函數(shù)參數(shù)解構(gòu)37、關(guān)于CSS盒模型,以下描述正確的有哪些?A.標(biāo)準(zhǔn)盒模型中,width僅包含內(nèi)容區(qū)域?qū)挾菳.IE盒模型中,width包含padding和borderC.可通過(guò)box-sizing屬性切換盒模型類型D.margin始終不參與盒模型的width計(jì)算38、下列哪些是HTTP緩存機(jī)制中的響應(yīng)頭字段?A.Cache-ControlB.ExpiresC.ETagD.Set-Cookie39、在Vue.js中,以下哪些方式可以實(shí)現(xiàn)組件間通信?A.props和$emitB.$attrs和$listenersC.Vuex或Pinia狀態(tài)管理D.使用localStorage直接讀寫40、關(guān)于HTML5語(yǔ)義化標(biāo)簽,以下說(shuō)法正確的有哪些?A.`<article>`表示獨(dú)立內(nèi)容區(qū)塊B.`<section>`代表文檔的一個(gè)區(qū)段C.`<div>`是語(yǔ)義化標(biāo)簽D.`<nav>`用于定義導(dǎo)航鏈接41、在JavaScript中,下列哪些方式可以實(shí)現(xiàn)變量的聲明?A.letB.varC.constD.declare42、關(guān)于HTML5語(yǔ)義化標(biāo)簽,下列哪些元素有助于提升網(wǎng)頁(yè)的可訪問(wèn)性和SEO?A.`<div>`B.`<article>`C.`<section>`D.`<nav>`43、在CSS布局中,下列哪些屬性設(shè)置可以觸發(fā)元素的BFC(塊格式化上下文)?A.float:leftB.display:inline-blockC.overflow:hiddenD.position:absolute44、關(guān)于JavaScript事件循環(huán)機(jī)制,下列說(shuō)法正確的有哪些?A.宏任務(wù)包括setTimeout、setInterval和I/O操作B.微任務(wù)包括Promise.then和MutationObserverC.每次事件循環(huán)只執(zhí)行一個(gè)宏任務(wù)和一個(gè)微任務(wù)D.微任務(wù)在當(dāng)前宏任務(wù)結(jié)束后立即執(zhí)行45、在Vue.js框架中,下列哪些方式可以實(shí)現(xiàn)組件間通信?A.props和$emitB.Vuex或Pinia狀態(tài)管理C.$attrs和$listenersD.localStorage三、判斷題判斷下列說(shuō)法是否正確(共10題)46、在JavaScript中,`typeofnull`的返回結(jié)果是`"null"`。A.正確B.錯(cuò)誤47、CSS中的`em`單位是相對(duì)于當(dāng)前元素的字體大小進(jìn)行計(jì)算的,而`rem`是相對(duì)于根元素(html)的字體大小。A.正確B.錯(cuò)誤48、在HTML5中,`<section>`標(biāo)簽可以用于替代`<div>`標(biāo)簽以提升語(yǔ)義化結(jié)構(gòu)。A.正確B.錯(cuò)誤49、使用`let`聲明的變量存在變量提升(hoisting),但不會(huì)被初始化,訪問(wèn)暫時(shí)性死區(qū)中的變量會(huì)報(bào)錯(cuò)。A.正確B.錯(cuò)誤50、在React中,useStateHook的更新函數(shù)(setter)是異步執(zhí)行的,因此立即讀取狀態(tài)不會(huì)反映最新值。A.正確B.錯(cuò)誤51、在JavaScript中,使用var聲明的變量存在變量提升現(xiàn)象,而let和const則不存在變量提升。A.正確B.錯(cuò)誤52、CSS中的flex布局默認(rèn)會(huì)使子元素在主軸方向上等分容器空間。A.正確B.錯(cuò)誤53、在Vue.js中,v-model本質(zhì)上是:value和@input事件的語(yǔ)法糖。A.正確B.錯(cuò)誤54、HTTP狀態(tài)碼304表示服務(wù)器接收到請(qǐng)求,但資源未被修改,客戶端可繼續(xù)使用緩存版本。A.正確B.錯(cuò)誤55、在React中,useEffect回調(diào)函數(shù)中返回的函數(shù)通常用于清除副作用,如取消訂閱或清除定時(shí)器。A.正確B.錯(cuò)誤

參考答案及解析1.【參考答案】C【解析】選項(xiàng)C是判斷數(shù)組最推薦的方式,`Array.isArray()`專門用于檢測(cè)數(shù)組類型,不受原型鏈影響。選項(xiàng)B雖然常用,但在跨iframe時(shí)可能因不同全局環(huán)境導(dǎo)致判斷錯(cuò)誤。A錯(cuò)誤,因?yàn)閌typeof`對(duì)數(shù)組返回"object"。D錯(cuò)誤,因?yàn)槠浣Y(jié)果應(yīng)為'[objectArray]'才表示數(shù)組,此處判斷的是對(duì)象。因此最準(zhǔn)確且安全的是C。2.【參考答案】B【解析】`box-sizing:border-box`時(shí),元素的width和height包含content、padding和border,這是現(xiàn)代布局常用方式。A錯(cuò)誤,標(biāo)準(zhǔn)盒模型(content-box)中width僅指content。C錯(cuò)誤,margin雖不計(jì)入元素自身尺寸,但影響布局空間。D錯(cuò)誤,早期IE使用怪異盒模型,現(xiàn)代瀏覽器默認(rèn)為標(biāo)準(zhǔn)模型。因此B正確。3.【參考答案】C【解析】500狀態(tài)碼表示服務(wù)器在處理請(qǐng)求時(shí)發(fā)生內(nèi)部錯(cuò)誤,屬于服務(wù)器端問(wèn)題。A錯(cuò)誤,301是永久重定向,搜索引擎會(huì)更新URL。B錯(cuò)誤,403是“禁止訪問(wèn)”,資源存在但無(wú)權(quán)限;404才是未找到。D錯(cuò)誤,206用于部分內(nèi)容返回(如斷點(diǎn)續(xù)傳),而非完整響應(yīng)。C描述準(zhǔn)確,符合規(guī)范。4.【參考答案】A【解析】父組件通過(guò)props向子組件傳遞數(shù)據(jù),是Vue中最基礎(chǔ)的通信方式。B錯(cuò)誤,$emit是子組件向父組件觸發(fā)事件。C錯(cuò)誤,組件間通信還可使用事件總線、provide/inject等,Vuex非必需。D錯(cuò)誤,v-model在Vue3中默認(rèn)綁定modelValue,可通過(guò)props自定義。因此A正確且最符合基礎(chǔ)原則。5.【參考答案】C【解析】事件循環(huán)中,同步代碼執(zhí)行后,優(yōu)先清空微任務(wù)隊(duì)列,再執(zhí)行下一個(gè)宏任務(wù)。Promise的`.then`回調(diào)屬于微任務(wù),會(huì)比setTimeout(宏任務(wù))先執(zhí)行。A錯(cuò)誤,應(yīng)是宏任務(wù)執(zhí)行后,先執(zhí)行所有微任務(wù)。B錯(cuò)誤,setTimeout是典型的宏任務(wù)。D錯(cuò)誤,微任務(wù)是在同步代碼執(zhí)行后處理。因此C正確。6.【參考答案】B【解析】閉包確實(shí)會(huì)維持外部函數(shù)變量的引用,可能增加內(nèi)存占用,但并不意味著“完全避免使用”。合理使用閉包能實(shí)現(xiàn)模塊化、私有變量等高級(jí)功能。現(xiàn)代JavaScript引擎已優(yōu)化內(nèi)存管理,只要注意解除不必要的引用,閉包是安全且常用的編程模式。因此B項(xiàng)說(shuō)法過(guò)于絕對(duì),是錯(cuò)誤的。7.【參考答案】D【解析】標(biāo)準(zhǔn)盒模型中,元素的width和height僅指內(nèi)容區(qū)域的尺寸,不包括padding、border和margin。其中,padding和border會(huì)額外增加元素實(shí)際占用空間,而margin是盒子外的空白區(qū)域,不影響自身尺寸計(jì)算。因此,只有外邊距(margin)不被包含在width/height內(nèi),答案為D。8.【參考答案】A【解析】v-model是Vue提供的雙向綁定指令,主要用于表單元素(如input、textarea、select)與數(shù)據(jù)之間的同步。v-bind用于單向綁定屬性,v-on用于綁定事件監(jiān)聽(tīng)器,v-html用于渲染HTML字符串。因此實(shí)現(xiàn)雙向數(shù)據(jù)綁定應(yīng)使用v-model,答案為A。9.【參考答案】C【解析】HTTP狀態(tài)碼404表示請(qǐng)求的資源在服務(wù)器上未找到,屬于客戶端錯(cuò)誤(4xx類)。200表示成功,304表示緩存未修改,屬于重定向或協(xié)商緩存,500表示服務(wù)器內(nèi)部錯(cuò)誤。因此,只有404是典型的客戶端請(qǐng)求錯(cuò)誤,說(shuō)明請(qǐng)求地址可能拼寫錯(cuò)誤或資源已刪除,答案為C。10.【參考答案】C【解析】<nav>標(biāo)簽專門用于定義頁(yè)面的導(dǎo)航鏈接區(qū)域,如主導(dǎo)航菜單、面包屑導(dǎo)航等,具有明確的語(yǔ)義化意義,有利于SEO和屏幕閱讀器識(shí)別。而<div>無(wú)語(yǔ)義,<section>表示文檔章節(jié),<article>表示獨(dú)立內(nèi)容塊。因此,主導(dǎo)航應(yīng)使用<nav>,答案為C。11.【參考答案】C【解析】hasOwnProperty()是Ototype上的方法,用于判斷對(duì)象是否包含指定的自有屬性,不包括原型鏈上的繼承屬性。Object.keys()和Object.getOwnPropertyNames()返回屬性名數(shù)組,不能直接用于判斷單個(gè)屬性是否存在。instanceof用于檢測(cè)構(gòu)造函數(shù)的prototype是否出現(xiàn)在對(duì)象的原型鏈中,與屬性檢測(cè)無(wú)關(guān)。因此正確答案為C。12.【參考答案】C【解析】float元素脫離文檔流但不支持margin:auto垂直居中,且float本身不構(gòu)成現(xiàn)代居中主流方案。A通過(guò)絕對(duì)定位和transform偏移實(shí)現(xiàn)精準(zhǔn)居中;B和D分別利用Flex和Grid的強(qiáng)大對(duì)齊能力。C選項(xiàng)無(wú)法實(shí)現(xiàn)垂直居中,故正確答案為C。13.【參考答案】D【解析】Cache-Control是HTTP/1.1中控制緩存的核心頭部,可設(shè)置max-age、no-cache等指令實(shí)現(xiàn)強(qiáng)緩存。Expires也用于強(qiáng)緩存,但優(yōu)先級(jí)低于Cache-Control。ETag和Last-Modified屬于協(xié)商緩存機(jī)制,用于驗(yàn)證資源是否更新。因此最全面且優(yōu)先使用的強(qiáng)緩存控制頭是Cache-Control,答案為D。14.【參考答案】B【解析】Vue3中reactive()用于創(chuàng)建一個(gè)響應(yīng)式對(duì)象,返回其代理。ref()也用于創(chuàng)建響應(yīng)式數(shù)據(jù),但主要用于基本類型。兩者都是核心API,但reactive更適合對(duì)象類型。observable是Vuex中的舊方法,defineReactive是Vue2的內(nèi)部方法。題目問(wèn)“主要函數(shù)”,reactive是處理對(duì)象響應(yīng)式的首選,故選B。15.【參考答案】B【解析】閉包確實(shí)會(huì)保留對(duì)變量的引用,可能增加內(nèi)存占用,但并非必然導(dǎo)致“內(nèi)存泄漏”,合理使用有助于模塊化和數(shù)據(jù)封裝?,F(xiàn)代JavaScript引擎會(huì)自動(dòng)回收無(wú)引用的閉包。A、C、D均為閉包的正確特性。B說(shuō)法過(guò)于絕對(duì),因此錯(cuò)誤,是本題答案。16.【參考答案】A【解析】stopPropagation()是用于阻止事件向上冒泡的標(biāo)準(zhǔn)方法。preventDefault()僅阻止默認(rèn)行為,不阻止冒泡;stopImmediatePropagation()不僅阻止冒泡,還阻止同一元素上的其他監(jiān)聽(tīng)器執(zhí)行;cancelBubble是IE早期的非標(biāo)準(zhǔn)屬性,現(xiàn)代開(kāi)發(fā)中推薦使用stopPropagation()。該知識(shí)點(diǎn)常出現(xiàn)在前端事件機(jī)制考查中。17.【參考答案】C【解析】標(biāo)準(zhǔn)盒模型中,width僅指內(nèi)容寬度,總寬度還需加上padding、border和margin;而IE盒模型及設(shè)置box-sizing:border-box后,width包含內(nèi)容、padding和border,更利于布局控制。該考點(diǎn)是CSS布局基礎(chǔ),高頻出現(xiàn)在筆試中。18.【參考答案】A【解析】v-model在表單元素上本質(zhì)上是v-bind綁定value與v-on監(jiān)聽(tīng)input事件的簡(jiǎn)寫。對(duì)于自定義組件,可通過(guò)props和$emit實(shí)現(xiàn)v-model。該機(jī)制是Vue數(shù)據(jù)綁定核心,常作為框架基礎(chǔ)考點(diǎn)考查。19.【參考答案】C【解析】500表示服務(wù)器在處理請(qǐng)求時(shí)發(fā)生內(nèi)部錯(cuò)誤;301是永久重定向,302才是臨時(shí);403是權(quán)限不足,404才是資源未找到;200表示成功且有響應(yīng)內(nèi)容,204才表示成功但無(wú)內(nèi)容。HTTP狀態(tài)碼是前后端通信基礎(chǔ),???。20.【參考答案】C【解析】const聲明的變量必須在聲明時(shí)賦值,且不可重新賦值;var沒(méi)有塊級(jí)作用域,存在變量提升;let和const有塊級(jí)作用域且存在暫時(shí)性死區(qū),不允許重復(fù)聲明。該知識(shí)點(diǎn)是JS變量作用域的核心考點(diǎn)。21.【參考答案】B【解析】typeof無(wú)法準(zhǔn)確判斷數(shù)組,返回的是'object';instanceofArray通過(guò)原型鏈判斷,適用于單一全局環(huán)境;雖然Ototype.toString.call()更精確,但選項(xiàng)D判斷的是對(duì)象而非數(shù)組;Array.isArray()是最推薦方法,但未列出。綜合來(lái)看,B為最合理正確選項(xiàng)。22.【參考答案】C【解析】float不參與現(xiàn)代居中布局,margin:auto在float下無(wú)法實(shí)現(xiàn)垂直居中;A利用絕對(duì)定位與transform實(shí)現(xiàn)精準(zhǔn)居中;B和D分別為Flex和Grid的標(biāo)準(zhǔn)居中方案;因此C無(wú)法實(shí)現(xiàn)垂直居中,為錯(cuò)誤方法。23.【參考答案】B【解析】ETag是基于資源內(nèi)容生成的標(biāo)識(shí),比Last-Modified更精確,優(yōu)先使用;Cache-Control優(yōu)先級(jí)高于Expires;304表示協(xié)商緩存生效,資源未更新;no-store嚴(yán)禁緩存,不可存儲(chǔ)任何副本。故B正確。24.【參考答案】D【解析】Vuex用于全局狀態(tài)管理,適用于復(fù)雜場(chǎng)景,父子組件簡(jiǎn)單通信應(yīng)使用props/$emit;A、B、C均為Vue標(biāo)準(zhǔn)通信機(jī)制;$attrs用于透?jìng)鲗傩?,D將Vuex用于簡(jiǎn)單場(chǎng)景,屬于過(guò)度設(shè)計(jì),故錯(cuò)誤。25.【參考答案】C【解析】Promise.then和process.nextTick屬于微任務(wù);setTimeout是宏任務(wù),宏任務(wù)在微任務(wù)之后執(zhí)行;每個(gè)事件循環(huán)只執(zhí)行一次宏任務(wù),但會(huì)清空所有微任務(wù)隊(duì)列;故C正確,A、B、D表述錯(cuò)誤。26.【參考答案】B【解析】hasOwnProperty()是Ototype上的方法,用于判斷對(duì)象是否包含指定的自有屬性,不包括原型鏈上的屬性。而in操作符會(huì)檢查對(duì)象及其原型鏈中的屬性,不能區(qū)分是否為自有屬性。Object.keys()返回所有可枚舉的自有字符串屬性名,但不能直接用于檢測(cè)單個(gè)屬性是否存在。getOwnPropertySymbols()僅返回符號(hào)屬性。因此,檢測(cè)自有屬性最直接準(zhǔn)確的方法是hasOwnProperty()。27.【參考答案】C【解析】float主要用于文本環(huán)繞和傳統(tǒng)布局,無(wú)法通過(guò)margin實(shí)現(xiàn)垂直居中,僅水平居中可通過(guò)margin:0auto實(shí)現(xiàn),但需配合寬度且不適用于垂直方向。A項(xiàng)通過(guò)絕對(duì)定位與transform移動(dòng)自身寬高一半實(shí)現(xiàn)居中;B項(xiàng)和D項(xiàng)分別是Flex和Grid布局的標(biāo)準(zhǔn)居中方案,均有效。因此,C項(xiàng)無(wú)法實(shí)現(xiàn)真正的水平垂直居中。28.【參考答案】C【解析】閉包是指函數(shù)能夠訪問(wèn)其詞法作用域之外的變量,即使在該作用域外執(zhí)行。它不一定需要“返回函數(shù)”才能形成,例如立即執(zhí)行函數(shù)中的內(nèi)部函數(shù)被事件引用時(shí)也會(huì)形成閉包。閉包確實(shí)能訪問(wèn)外部變量并保持引用,可能阻止垃圾回收,導(dǎo)致內(nèi)存泄漏。因此C項(xiàng)說(shuō)法過(guò)于絕對(duì),是錯(cuò)誤的。29.【參考答案】A【解析】Vue3的CompositionAPI中,ref用于創(chuàng)建基礎(chǔ)類型響應(yīng)式數(shù)據(jù),reactive用于創(chuàng)建引用類型響應(yīng)式對(duì)象。B項(xiàng)中state并非CompositionAPI方法;C項(xiàng)是OptionsAPI的寫法;D項(xiàng)中createRef和observe并非Vue提供的API。因此,A項(xiàng)是唯一正確的響應(yīng)式聲明方式。30.【參考答案】A【解析】Cache-Control是HTTP/1.1中用于控制強(qiáng)緩存的核心頭部,可設(shè)置max-age、no-cache等指令,優(yōu)先級(jí)高于舊的Expires。ETag和If-None-Match用于協(xié)商緩存(弱緩存),判斷資源是否變更。Expires雖也用于強(qiáng)緩存,但已被Cache-Control取代。題目問(wèn)“主要”控制方式,故A更準(zhǔn)確且現(xiàn)代。31.【參考答案】A、C、D【解析】var聲明的變量會(huì)被提升至作用域頂部,但賦值保留在原位。let和const也存在提升,但進(jìn)入“暫時(shí)性死區(qū)”,不可在聲明前訪問(wèn),因此B錯(cuò)誤。函數(shù)聲明整體提升,函數(shù)表達(dá)式僅變量名提升。提升本質(zhì)是JS引擎在編譯階段對(duì)變量和函數(shù)聲明的處理,提前分配內(nèi)存,D正確。32.【參考答案】A、B、C、D【解析】A通過(guò)Flexbox的主軸與交叉軸居中;B通過(guò)定位+transform偏移自身寬高一半;C利用絕對(duì)定位四邊為0,配合auto外邊距實(shí)現(xiàn)居中(需設(shè)置寬高);D通過(guò)Grid布局的place-items屬性統(tǒng)一設(shè)置內(nèi)容對(duì)齊方式。四種方法均有效。33.【參考答案】A、B、C、D【解析】4xx狀態(tài)碼表示客戶端請(qǐng)求存在問(wèn)題。400表示請(qǐng)求語(yǔ)法錯(cuò)誤;401表示未認(rèn)證,需身份驗(yàn)證;403表示服務(wù)器拒絕執(zhí)行,權(quán)限不足;404表示請(qǐng)求資源不存在。以上均屬于客戶端錯(cuò)誤范疇,故全選正確。34.【參考答案】A、B、D【解析】Vue2通過(guò)Object.defineProperty劫持屬性的getter/setter實(shí)現(xiàn)響應(yīng)式,但無(wú)法監(jiān)聽(tīng)對(duì)象新增屬性或數(shù)組索引變化,C錯(cuò)誤。Vue3使用Proxy,解決了上述限制。this.$set用于手動(dòng)將新屬性變?yōu)轫憫?yīng)式,D正確。A、B為Vue響應(yīng)式演進(jìn)的核心技術(shù)點(diǎn)。35.【參考答案】A、B、C、D【解析】同源策略是瀏覽器安全基石,要求協(xié)議、域名、端口一致。它限制了跨域的DOM操作、Cookie共享及XMLHttpRequest請(qǐng)求。CORS通過(guò)Access-Control-Allow-Origin等響應(yīng)頭實(shí)現(xiàn)安全跨域。JSONP利用script標(biāo)簽不受同源限制的特性,通過(guò)回調(diào)函數(shù)獲取數(shù)據(jù),但僅支持GE

溫馨提示

  • 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)論