javascript
获取页面所有属性并生成html6,JavaScript基础练习题(三)
一、單選題
1.以下關于Javascript中事件的描述中,不正確的是
A click——鼠標單擊事件
B focus——獲取焦點事件
C mouseover——鼠標指針移動到事件源對象上時觸發的事件
D change——選擇字段時觸發的事件
正確答案: D
解析:change事件為input內容發生改變時觸發的事件。根據input的type屬性值不同,具體的觸發時機也不盡相同
2.下列哪些不是es6中新增的:
A Objec.assign
B Array.from
C forEach
D for of 循環
正確答案: C
解析:forEach 是es5的
3.阻止瀏覽器默認行為,使用以下哪個方法
A stopPropagation()
B preventDefault()
C cancelBubble = false
D return true
正確答案: B
4.下列代碼執行結果為真的是
A 1<2 && “5”!=5
B 2>21 || “5”==5
C 2>21 && 5==5
D 2>=2*1 && “5”===5
正確答案: B
5.下面可以獲取瀏覽器在卷動后,隱藏的文檔部分的高度的屬性是
A window.body.scrollTop
B document.body.scrollTop;
C document.scrolTop;
D documentElement.body.scrollTop
正確答案: B
6.在HTML頁面中,下列選項不屬于鼠標相關事件的是
A onclick
B onmouseover
C onmousedown
D onchange
正確答案: D
7.在HTML頁面中,下列選項不屬于鍵盤相關事件的是
A onkeyup
B onkeydown
C oncontextmenu
D onkeypress
正確答案: C
8.分析下面的JavaScript代碼段,輸出結果是 var a=15.59; document.write(Math.round(a))
A 15
B 16
C 15.5
D 15.4
正確答案: B
9.下面哪個方法可以匹配數組是否含有某個值
A sort()
B push()
C join()
D indexOf()
正確答案: D
10.以下ES6字符串拼接中最推薦使用的是以下哪種寫法?
A 今天天氣+很好
B 今天天氣${"很好"}
C 今天天氣+" 很 好 " ; D ‘ 今 天 天 氣 + {"很好"}; D `今天天氣+"很好";D‘今天天氣+{很好} `;
正確答案: B
11.以下屬于正則的方法有
A text()
B replace()
C test()
D match()
正確答案: C
解析:該方法用于檢測參數字符串是否與正則表達式匹配
12.回車鍵的keyCode值是 ?
A 12
B 13
C 32
D 33
正確答案: B
13.以下哪些屬性不是事件對象event的屬性
A offsetX
B clientX
C offsetLeft
D target
正確答案: C
解析:C、實時獲取元素針對于offsetParent的left坐標
14.0.1+0.7 == 0.8 (0.1 + 0.7 計算結果是浮點數)
A true
B false
C Infinity
D NaN
正確答案: B
解析:由于計算機存儲數字的特點,導致浮點數的計算存在誤差。0.1+0.7 === 0.7999999999999999所以結果為false
15.以下獲取事件對象正確的方式是 :
A function fn(){ window.event }
B obox.onclick = function( ){ e }
C obox.onclick = function (event){ var evt = event || window.event }
D function fn( e ){ e }
正確答案: C
解析:時間對象需要兼容
16.以下哪個事件不存在
A onclick
B onblur
C onlook
D oninput
正確答案: C
17.“hello”.repeat(3)的執行結果是
A hello
B hellooo
C helloooo
D hellohellohello
正確答案: D
解析:repeat()的功能是將字符串重復參數指定的次數
18.下列代碼的執行結果是 var arr = [1,11,2,22,3,4]; arr.sort(); document.write(arr);
A 1,11,2,22,3,4
B 1,2,3,4,11,22
C 22,11,4,3,2,1
D 報錯
正確答案: A
解析:arr.sort();直接用,不能對超過10以上的數字排序,所以會得:1,11,2,22,3,4
19.在HTML頁面中包含如下所示代碼,則編寫Javascript函數判斷是否按下鍵盤上的回車鍵正確的編碼是 (回車鍵的鍵盤碼是13)
A function myKeyDown(){ if (window.keyCode13){ alert(“你按下了回車鍵”)}};
B function myKeyDown(){ if (document.keyCode13){ alert(“你按下了回車鍵”);}}
C function myKeyDown(){ if (event.keyCode13){ alert(“你按下了回車鍵”)}}
D function myKeyDown(){ if (keyCode13){ alert(“你按下了回車鍵”)}}
正確答案: C
解析:keyCode是event對象下面的屬性,keycode等于13說明按下了回車鍵
20.下列哪個不是Math對象的方法
A sort()
B floor()
C random()
D abs()
正確答案: A
解析:sort()是數組的方法
22.下面的 JavaScript 語句中,哪個實現檢索當前頁面中的表單元素中的所有文本框,并將它們全部清空
A for(var i=0;i< form1.elements.length;i++) { if(form1.elements[i].type==“text”) form1.elements[i].value=""; }
B for(var i=0;iif(forms[0].elements[i].type==“text”) forms[0].elements[i].value="";
}
C if(document.form.elements.type==“text”) form.elements[i].value=""
D for(var i=0;ifor(var j=0;jif(document.forms[i].elements[j].type==“text”) document.forms[i].elements[j].value="";
}
}
正確答案: D
解析:
for(var i=0;ifor(var j=0;jif(document.forms[i].elements[j].type==“text”)
document.forms[i].elements[j].value=""; }
}找到所有form里面所有的text文本框,把value設置為空。
23.下列代碼的執行結果是( )
var i = 12;
var sum =i++ + ++i + ++i2 + i-- + i–;
document.write(sum + " " + i);
A 85 13
B 84 12
C 83 11
D 85 14
正確答案: A
解析: var i = 12; var sum =i++ + ++i + ++i2 + i-- + i–;document.write(sum + " " + i);
考察一元運算符的知識:
++: 自增1(在原來的數值基礎上加1)
–:自減1(在原來的數值基礎上加1)
前置:返回值:返回值是減1(加1)之后的值 (前置就是運算符在前面 ++i)
后置:返回值:返回值是沒減1(加1)之前的值(后置就是運算符在前面 i++)
有這個基礎后,把式子從左到右算一次即可
24.如果今天是2006年5月14日,分析下列JavaScript代碼運行后,在網頁上顯示()
var now = new Date();
var year = now.getFullYear();
var month = now.getMonth();
var date = now.getDate();
document.write(year+" “+month+” "+date);
A 2006 05 14
B 2006 5 14
C 2006 04 14
D 2006 4 14
正確答案: D
25.下列代碼輸出的結果是
var y = 1;
var x = y = typeof x;
console.log(x);
A undefined
B 1
C y
D 報錯
正確答案: A
解析:在typeof x時,x只是被聲明,但是沒有被賦值
26.執行下面程序片段的效果是
被賦值
if( window.event.srcElement.tagName==‘A’&&window.event.shiftKey ) {
window.event.returnValue==false;
}
A 在IE中,點擊’被賦值’超鏈接 總能 打開’被賦值’網站
B 在IE中,點擊’被賦值’超鏈接 不能 打開’被賦值’網站
C 在IE中,點擊’被賦值’超鏈接 能 打開’被賦值’網站,按下shift鍵點擊’被賦值’超鏈接 不能 打開’被賦值網站
D 在IE中,點擊被賦值超鏈接 不能 打開’被賦值’網站,按下shift鍵點擊’被賦值‘超鏈接 能 打開’被賦值’網站
正確答案: C
27.字符串的match方法的語法格式為:str.match(searchvalue) 或者 str.match(regexp),下列說法錯誤的是()注:RegExp是正則的構造函數
A 如果regexp參數不是RegExp對象,則需要首先把它傳遞給RegExp構造函數,將其轉換為RegExp對象
B 函數的返回值存放匹配結果的數組。該數組的內容依賴于regexp是否具有全局標志g
C 全局匹配返回的數組的內容與非全局匹配返回的數組內容是一樣的
D 代碼’1abc2qwe3’.match(/\d+/g); 將找出字符串中的所有數字
正確答案: C
解析:全局匹配時,返回所有與regexp匹配的內容,非全局匹配時,第一個元素為匹配內容,后面為分組捕獲的內容
28.下列關于window.onload事件的相關說法正確的是
A window.onload事件可能觸發多次
B window.onload事件是指的 DOM結構加載完成之后
C window.onload 事件可以綁定多個處理函數,并且都會觸發
D window.onload 事件在頁面所有的內容都加載完畢之后才觸發
正確答案: D
解析:在文檔裝載完成后會觸發 load 事件。此時,在文檔中的所有對象都在DOM中,所有圖片,腳本,鏈接以及sub-frames都完成了裝載。
29.有如下代碼: var arr = new Array(9); arr[0]=1; arr[2]=2; 該數組的length屬性值為
A 2
B 10
C 8
D 9
正確答案: D
解析:因為new Array(9)表示數組共有9項 , arr[n] = xxx 表示對數組某一項賦值。
30.下列代碼輸出的結果是
function fn(a) {
console.log(a);
var a = 2;
function a() {};
console.log(a);
}
fn(2);
A undefined和報錯
B function a() {}和2
C 報錯和 2
D undefined和function a(){};
正確答案: B
解析:聲明提升,var 要比 function 先提升。
二、多選題(不定項選擇)(共20題,每題2分)
得分:2.0分
1.下面表示定時器的有
A keyframes
B setInterval
C setTimeOut
D animate
正確答案: B,C
2.正則對象的方法包括
A test();
B index()
C exec()
D match()
正確答案: A,C
解析:正則的對象方法只有2個,其他屬于字符串的方法.
exec() 找到了返回數組,找不到返回null.test() true或false.
3.以下對嚴格模式的說法正確的是
A 使用"use strict"定義嚴格模式
B 嚴格模式可以定義在函數的最頂端或程序的最頂端
C 在嚴格模式下 在變量a 沒有聲明時 a = 10 ; 這樣的賦值會報錯
D 嚴格模式執行效率更高
正確答案: A,B,C,D
4.事件中會產生哪些兼容問題
A 事件對象的創建
B 事件冒泡
C 瀏覽器的默認行為
D 事件委托中事件源的獲取
正確答案: A,B,C,D
5.將字符串轉成大寫和小寫的方法是
A str.toSmallCase()
B str.toLowerCase()
C str.toUpperCase()
D str.toUpperChars()
正確答案: B,C
6.以下表達式能生成1-10(包含1、10)間隨機數的是
A Math.floor(Math.random()*9)
B Math.ceil(Math.random()*10)
C Math.floor(Math.random()*10)+1
D Math.floor(Math.random()*10)
正確答案: B,C
7.var a=“10”,以下能實現字符串轉成數字的是
A a*1
B Number(a)
C a-0
D a+0
正確答案: A,B,C
8.下面哪些是全局方法
A prompt()
B match()
C alert()
D confirm()
正確答案: A,C,D
9.下面哪些屬于數組的方法
A sort( )
B push()
C indexOf()
D join()
正確答案: A,B,C,D
10.下面哪個不是數組的方法
A map()
B split()
C filter()
D test ()
正確答案: B,D
解析:split 是字符串方法 test 是正則方法
11.更改h1標簽內容可以用以下哪個屬性
A innerText
B valueof
C innerHTML
D value
正確答案: A,C
12.字符串的操作方法有
A indexOf
B lastIndexOf
C charAt
D charCodeAt
正確答案: A,B,C,D
解析:
String.fromCodePoint(97) ===> a
String.fromCharCode( 65) ===> A
13.事件對象中可以阻止事件冒泡的方法或屬性為
A e.stopPropagation()
B e.preventDefault()
C e.cancelBubble = true
D event.returnValue = false
正確答案: A,C
解析:B、D為阻止瀏覽器默認行為的
14.給元素添加事件監聽正確的方法有
A oDiv.onclick()
B oDiv.attachEvent()
C oDiv.addEventListener()
D oDiv.detachEvent()
正確答案: B,C
解析:
A的正確用法為oDiv.onclick = function () {}
D為IE8接觸事件綁定的方法
15.假設有一輸入框的DOM名稱為otxt,以下能獲取輸入框值(value)的是
A otxt.getAttribute(“value”)
B otxt.value
C otxt[“value”]
D otxt.getValue()
正確答案: A,B,C
解析:getAttribute()是獲取屬性值的方法,因為value就是屬性值,otxt.value和otxt[“value”]都可以獲取屬性值,所以ABC正確,D選項,沒有getValue()方法,錯誤
16.如何阻止事件冒泡
A cancelBubble
B return true
C event.preventDefault
D event.stopPropagation()
正確答案: A,D
解析:瀏覽器有一些默認行為,比如右鍵菜單,點擊跳轉,文字選中效果,拖拽鬼影等,如果出現莫名其妙的問題,也可能是默認行為導致的,阻止默認行為:event.preventDefault和return false,阻止冒泡:cancelBubble和event.stopPropagation();。
17.下面是正則中有意義的簡寫的有 :
A \d
B \w
C \s
D \S
正確答案: A,B,C,D
18.關于 window 對象表述正確的有
A window.open 方法 可以彈出一個新窗口
B window.location.reload()方法可以用來刷新當前頁面
C window.location.href="a.html"的作用都是把當前頁面替換成 a.html 頁面
D 定義了全局變量 g;可以用 window.g 的方式來存取該變量
正確答案: A,B,C,D
解析:全部是window之中的方法
得分:2.0分
19.ES6中新增的聲明變量的關鍵字有
A function
B let
C const
D str
正確答案: B,C
解析:let用來聲明變量
const用來聲明常量
20.解構賦值可以做到以下哪些事
A 一次性可以定義多個變量
B 可以作用在函數的傳參上,以對象的方式傳遞,參數順序也無須保持一致
C 可以輕松實現兩個數的交換
D 可以實現一個函數返回多個結果
正確答案: A,B,C,D
總結
以上是生活随笔為你收集整理的获取页面所有属性并生成html6,JavaScript基础练习题(三)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 深度学习attention原理_深度学习
- 下一篇: CentOS7 源码编译安装NodeJS