快來每日上分,2021前端面試題10道(附答案與解析)
一.先言:

二.題目(答案在最后):
1.問一份標(biāo)準(zhǔn)的HTML文檔有哪幾個(gè)必須的HTML標(biāo)簽?【多選】
A. B.
C.2.元素的type屬性的取值可以是( )【多選】
A. image B. checkbox C. button D. select
3.下列哪個(gè)操作是W3C標(biāo)準(zhǔn)定義的阻止事件向父容器傳遞:【單選】
A. e.preventDefault() B. e.cancelBubble=true C. e.stopPropagation() D. e.stopImmediatePropagation()
4.下列哪種選擇器不是css3才定義的:【單選】
A. :enabled B. :checked C. :before D. :only-child
5.以下那些是css屬性position可以設(shè)置的值:【多選】
A. fixed B. relative C. absolute D. inherit
6.以下哪些Array對(duì)象的方法不會(huì)更改原有數(shù)組?【多選】
A. concat() B. splice() C. map() D. sort()
7.JavaScript定義var a=“40”,var b=7,則執(zhí)行a%b會(huì)得到()。【單選】
A. 5 B. "5" C. undefined D. null
8.以下運(yùn)行結(jié)果:
for(var i = 0; i < 10; i++) { setTimeout(function() { console.log(i); }, 1000); }
A. 0--9 B. 10個(gè)10 C. 10個(gè)9 D. 無限循環(huán)
9.以下運(yùn)行結(jié)果:
var user = { count : 1, getCount: function(){ return this.count; } } var func = user.getCount console.log(func())
A. this.count B. 1 C. 報(bào)錯(cuò) D. undefined
10.移除數(shù)組 arr 中的所有值與 item 相等的元素。不要直接修改數(shù)組 arr,結(jié)果返回新的數(shù)組:
function remove(arr, item) { 。。。 }
三.答案與解析:
1. 選ABCD,注意看問的是標(biāo)準(zhǔn)的HTML文檔。
2. 選ABC,沒有select,有以下:
button checkbox file hidden image password radio reset submit text
3. 選C, preventDefault()是取消事件默認(rèn)行為;stopImmediatePropagation() 取消事件冒泡同時(shí)阻止當(dāng)前節(jié)點(diǎn)上的事件處理程序被調(diào)用;cancelBubble()是取消事件冒泡,不符合 W3C 標(biāo)準(zhǔn),適用于 IE;stopPropagation()阻止事件冒泡行為 , 符合 W3C 標(biāo)準(zhǔn);
4.選C,:before選擇器早在CSS 2.1版本就定義了。
5.ABCD,有 絕對(duì)absolute,固定fixed,相對(duì)relative,繼承父元素inherit,默認(rèn)static,粘性sticky…略。
6.選AC,concat()方法不會(huì)改變現(xiàn)有的數(shù)組,而僅僅會(huì)返回被連接數(shù)組的一個(gè)副本。map()方法返回一個(gè)新數(shù)組,數(shù)組中的元素為原始數(shù)組元素調(diào)用函數(shù)處理后的值。sort() 方法用于對(duì)數(shù)組的元素進(jìn)行排序,肯定改變了。splice() 方法向/從數(shù)組中添加/刪除項(xiàng)目,然后返回被刪除的項(xiàng)目,也改了。
7.選A,js是弱語言類型。在進(jìn)行算術(shù)運(yùn)算時(shí),只有做+號(hào),數(shù)字隱式轉(zhuǎn)換成字符串。其余的運(yùn)算符號(hào)是字符串隱式轉(zhuǎn)換成數(shù)字。
8.選B,JavaScript的任務(wù)分為同步任務(wù)和異步任務(wù),同步任務(wù)放在主線程,形成一個(gè)執(zhí)行棧;異步任務(wù)放在任務(wù)隊(duì)列,只有主線程空了才會(huì)去讀取任務(wù)隊(duì)列的任務(wù)。setTimeout是異步操作,每次遇到它不是先運(yùn)行,而是先壓入執(zhí)行棧。等i執(zhí)行完for循環(huán),setTimeout才開始執(zhí)行,此時(shí)的i已經(jīng)是10了,就打印了10個(gè)10。
9.選D。函數(shù)調(diào)用時(shí),this才會(huì)發(fā)生綁定,而且是誰調(diào)用this,this就指向誰。這里func調(diào)用了它,所以指向func,而func是全局環(huán)境中的,所以this指向window,而count是一個(gè)局部變量,所以u(píng)ndefined。
10.如下,這個(gè)比較簡(jiǎn)單就不解釋了:
function remove(arr, item) { let arr2 = arr.filter(i=>{ return i!=item; }) return arr2; }
總結(jié):
每日一練,做人沒有夢(mèng)想,那和咸魚有什么分別~
HTML JavaScript web前端
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。