最新中级JavaScript阶段题目

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

选择题
1、(单选题)需要在 html 页面上引用脚本文件myJs.js,下列语句中,正确的是(D)。

A。

<script language=”javascript" href=”myJs。

js" type="text/javascript” />
B.<script language=”javascript” src="myJs。

js" type="text/javascript" /〉
C.<script language=”javascript” href="myJs。

js” type="text/javascript">〈/script〉
D。

〈script language=”javascript” src="myJs.js” type=”text/javascript”〉〈/script>
2、(单选题)现需要使用Javascript在页面上打印出"Hello world”,下列选项中,正确的是(A)
A. document.write(“Hello World”);
B.console。

write(“Hello World”);
C.document。

write(Hello World);
D。

console.log(Hello World);
3、(单选题)查看如下代码:
var userName;
console.log(userName); 上述代码运行后,将在控制台显示(A)
A.Undefined
B.Null
C.程序错误
D.空字符串
4、(单选题)查看如下代码:
var x = 11;
var y = “number”;
var m = x + y; 上述代码执行后,变量m的值是(C)
NaN B.11.0 C.11number D.undefined
5、(单选题)查看如下代码: var a = 3; var b = 2; var c = (a+2)/b; document。

write (c);上述代码的输出结果是(B)
A.2.0
B.2。

5 C。

16。

0 D.(3+2)/2
6、(单选题)查看如下代码:
function add(){
var sum = 1 + 2;
console。

log( sum );
}
console。

log(sum) ;
上述代码的输出结果是(C)
A.输出两个3
B.输出一个3
C.程序错误
D。

输出一个undefined
7、(单选题)查看如下代码:
var num = 2;
switch(num) {
case 1: console。

log(”1"); case 2: console.log(”2"); default: console.log(”default”);}
上述代码的输出结果是(A)
A.先输出2,再输出default
B.输出2
C.程序错误
D.先输出1,再输出2,再输出default
8、(单选题)查看如下代码:
for(var i=1; i<=6; i++) {
if( i % 3 == 0) {
continue;
}
console.log( i);
}上述代码的输出结果是(A)
A.分别输出1、2、4、5
B.分别输出3、6
C.分别输出1、2、3、4、5、6
D.分别输出1、2
9、(单选题)查看如下代码:
var arr1 = [10, 20, 30, 40];
var arr2 = arr1.slice(1, 3); slice(开始元素,结束元素(不包含))console.log(arr1);
console.log(arr2);
上述代码的输出结果是(D)
A.两次都输出[20,30,40]
B.先输出[10,20,30,40],再输出[20,30,40]
C.两次都输出[20,30]
D.先输出[10,20,30,40],再输出[20,30]
10、(单选题)查看如下代码:
var msg = ’abcdef';
console。

log( msg。

substring(2, 4) ); substring(开始,结束(不包含))
上述代码的输出结果是(B)
A.cde
B.cd
C.bcde
D。

bc
11、(单选题)查看如下代码:
var max = 100;
var i = Math.floor( Math.random()*max );
上述代码运行后,对于变量 i 的值,下列说法中,正确的是()。

A.1 到 100 之间的整数,包含 1 和 100
B.0 到 100 之间的整数,包含 0,不包含 100
C。

1 到 100 之间的整数,包含 1 ,不包含 100
D.0 到 100 之间的整数,包含 0,包含 100
12、(单选题)查看如下代码:
var obj = { "name”: ”Tom",”salary" : 3500 }; console。

log ( obj。

name );
console。

log(obj["salary”] );
上述代码的输出结果是(A)
A.先输出Tom,再输出3500
B.先输出Tom,再输出undefined
C.程序错误
D.先输出Tom,再输出0
13、(单选题)查看如下代码:
var arr = new Array();
arr[ 0 ] = [ 101, 102, 103 ]; arr[ 1 ] = [ 201 ];
arr[ 2 ] = [ 301, 302]console。

log( arr[1][1] );
上述代码的输出结果是(D)
A。

201。

0
B.程序错误
C。

102。

0
D。

undefined
14、(单选题)查看如下代码:
var i = 0 ;
while ( i < 100 ) {
console.log( i);
if( i == 5 ){
break;
} i ++ ;}
上述代码的输出结果是(B)
A.分别输出1、2、3、4、5
B.分别输出0、1、2、3、4、5
C.分别输出0、1、2、4、5
D.分别输出0、1、2、3、4
15、(单选题)关于 DOM 节点信息,下列描述中,错误的是().
A.nodeName 表示节点的名称,为节点的只读属性
B。

nodeType 表示节点类型,返回Number 类型数据
C。

nodeValue 表示节点的值,返回String 类型数据
D.可以使用nodeValue 属性获取元素节点的值
16、(单选题)有html 代码如下:〈p id="msg”〉〈span〉消息</span></p> 还有JavaScript 代码如下:var p = document.getElementById('msg');console.log( p。

innerHTML ); console。

log(p。

textContent ); 上述代码的输出结果是(A)。

A。

先输出“<span〉消息</span〉”,再输出“消息”
B.输出两次“〈span〉消息</span〉”
C。

先输出“消息”,再输出“〈span>消息</span〉"
D。

输出两次“消息”
17。

(单选题)有html 代码如下:<p id=”msg”〉〈span〉消息</span>〈span>通知</span〉</p〉还有JavaScript 代码如下:var p = document。

getElementById(’msg'); console.log( p.nodeValue );console。

log(p。

textContent );上述代码的输出结果是(C)。

A.先输出“消息通知”,再输出“null”
B.输出两次“消息通知”
C.先输出“null”,再输出“消息通知”
D.以上都不对
18。

(单选题)有html 代码如下:〈div id="news"〉<p>新闻标题1〈/p> 〈p class=”cu rrent">新闻标题2〈/p> <p>新闻标题3</p〉</div〉还有JavaScript 代码如下:var div = document.getElementById('news'); var ps = div。

getElementsByClassName('current’);console.log(ps[0].innerHTML ); 上述代码的输出结果是(A).
A.新闻标题1
B。

新闻标题2
C。

null
D。

程序错误
19.(单选题)有html 代码如下:〈div id="news"> <p>新闻标题1</p> <p>新闻标题2</p〉〈p>新闻标题3〈/p> 〈/div> 还有JavaScript 代码如下:var div = document.getElementById(’news');console.log(div.firstChild.innerHTML); console.log(div.firstElementChild.innerHTML);上述代码的输出结果是(A)。

A。

先输出“undefined",再输出“新闻标题1”
B.输出两次“undefined”
C.输出两次“新闻标题1”
D.先输出“新闻标题1”,再输出“undefined”
20。

(单选题)查看如下代码: var div = document.createElement(’div'); var p = document.createElement(”p”); p。

innerHTML = "联系我们”;var txt = document。

createTextNode('版权声明’); div.appendChild(p);div。

appendChild(txt);console.log(div。

innerHTML);上述代码的输出结果是(A)。

A。

<p>联系我们〈/p〉版权声明
B.<p>联系我们版权声明〈/p〉
C。

版权声明〈p〉联系我们</p>
D.程序错误
21.(单选题)有html 代码如下:<ul id=”menu”><li>首页</li〉<li〉联系我们</li>〈/ul> 还有JavaScript 代码如下:var ul = document。

getElementById(’menu’);var newLi = document.createElement('li’);newLi.appendChild(document。

createTextNode('新闻'));ul.insertBefore(newLi,stChild);console.log(ul。

innerHTML); 上述代码的输出结果是(C).
A.<li〉新闻〈/li〉〈li〉首页</li〉〈li>联系我们〈/li〉
B.〈li>首页〈/li〉<li〉联系我们〈/li><li>新闻</li>
C.<li>首页〈/li><li>新闻</li〉〈li〉联系我们</li>
D。

程序错误
22.(单选题)有html 代码如下:〈ul id=”menu">〈li>首页〈/li><li>联系我们〈/li>〈/ul> 还有JavaScript 代码如下: var ul = document。

getElementById(’menu'); var newLi = document.createElement('li');newLi.innerHTML = ”招聘”;newLi.replaceChild(newLi,stChild );console。

log(ul。

innerHTML); 上述代码的输出结果是(C)。

A。

〈li>首页〈/li><li>招聘〈/li>
B.〈li〉首页</li>〈li〉联系我们</li〉〈li>招聘</li>
C。

<li>招聘〈/li〉<li〉联系我们</li〉
D。

程序错误
23.(单选题)下列不属于浏览器内置对象的是(D).
A.navigator
B.document
C。

window
D。

request
24。

(单选题)其html 代码如下: 〈body onload="initialClock();"> 〈span id=”mySpan"〉</span〉〈/body〉相应的JavaScript 代码如下:function initialClock() {//<〈插入代码>〉; };function timerFunc() {var v = new Date();document。

getElementById(”mySpan")。

innerHTML = v.toLocaleTimeString(); }现需要在span 元素中实现动态时钟的显示,”插入代码“处所需要的代码是(B).
A。

window.setInterval(timerFunc,1000);
B。

window.setInterval(timerFunc(),1000);
C.window.setTimeout(timerFunc,1000);
D.window。

setTimeout(timerFunc(),1000);
25。

(单选题)需要在原有浏览器窗口中打开地址为/ 的页面,且保留历史访问记录。

下列选项中,正确的是(D)。

A。

location。

href = "http://”;
B.window.open(”http://www。

bjsxt。

com”);
C。

location.replace("http://www。

");
D.history。

go(”http://www。

bjsxt。

com");
26。

(单选题)关于event 对象,下列描述中,错误的是(D)。

A。

任何事件触发后将会产生一个event 对象
B.event 对象记录事件发生时的鼠标位置、键盘按键状态和触发对象等信息
C。

event 对象的cancelBubble 属性,用于设置是否取消事件冒泡
D。

event 对象的srcElement 属性,用于获取触发事件的节点对象(Window 对象、Document 对象或Element 对象的引用。


27。

(单选题)有变量obj 表示页面上的某个元素。

现需要修改该元素的显示方式即将该元素显示为行内元素。

下列选项中,正确的是(A)。

A.obj。

style.display = ’inline’;
B.obj。

style。

display = 'none’;
C。

obj.style。

show = 'inline';
D。

obj。

style.show = 'none';
28.(单选题)HTML 页面上有一个超级链接,要实现当鼠标移入该超级链接时,超级链接的文本背景色变为灰色。

下列选项中,能实现此功能的是(D).
A.<a href=”#” onmouseover="this。

style.backgr ound.color='gray’;”>注册〈/a〉
B.<a href="#” onmouseout="this。

style。

background-color='gray';"〉注册</a〉
C.〈a href="#” onmouseover=”this.style。

backgroundColor=gray;”〉注册〈/a〉
D.〈a href=”#" onmouseover=”this.style。

backgroundColor='gray’;”〉注册〈/a〉
29。

(单选题)如果不给cookie设置过期时间,那么cookie默认保存时间是(C)。

A.立刻过期
B。

cookie无法设置
C。

在浏览器会话结束时过期
D.永不过期
30.(多选题)有html 代码如下:<select id=”datas” size=”3”〉<option>aa〈/option> <option〉bb〈/option〉〈option〉cc〈/option> </select〉还有JavaScript 代码如下: var list = document。

getElementById('datas'); 现需要将html 代码中的列表框,修改为下拉列表框。

下列选项中,正确的是(A B)。

A。

list。

removeAttribute(”size");
B。

list.removeAttributeNode(list.attributes[1]);
C.list.removeAttributeNode(”size");
D.list.removeAttribute(list.attributes[1]);
31。

(多选题)有html 代码如下: <input type=”checkbox” name="state" value="1” /〉未付款〈input type=”checkbox" name="state" value="2” /〉未发货<input type="checkbox” name="state" value=”3” />已发货下列选项中,能获取第二个多选框的value值的是(C D)。

A。

document。

getElementsByTagName('state')[1].attributes[”value”]。

value
B.document.getElementsByName('input')[1]。

attributes["value"].value
C.document。

getElementsByTagName(’input’)[1].attributes[”value”]。

value
D。

document。

getElementsByName(’state')[1].attributes[”value"]。

value
32.(多选题)有html 代码如下:〈input type="text” id="t1" /> 下列选项中,能向文本框中写入文本的是(B D)。

A。

document.getElementById("t1").setAttribute("value”,"aa");
B。

document。

getElementById("t1")。

innerHTML = "bb”;
C.document.getElementsByTagName(”input")[0].setAttribute("value”,"cc");
D。

document。

getElementsByTa gName("input”)[0]。

innerHTML = "dd";
33.(多选题)有html 代码如下:<a id=”bdlink" href=”javascript:void(0);">百度搜索</a〉还有JavaScript 代码如下:var a = document。

getElementById("bdlink"); 为了将该超级链接元素的href 属性的值修改为“#”,下列选项中,正确的是(A C).
A。

a.attributes[”href"]。

value = ”#";
B.a。

attributes[”href”] = ”#”;
C。

a.setAttribute(”href","#”);
D。

a。

setAttributeNode(”href","#");(ERROR)
34.(多选题)有html 代码如下:〈a id="bdlink” href="javascript:void(0);”〉百度搜索</a〉还有JavaScript 代码如下:var a = document.getElementById("bdlink");为了获取该超级链接元素的href 属性的值,下列选项中,正确的是(A B C D)。

A.a。

attributes[”href"].value
B。

a.getAttribute(”href")
C.a。

attributes[1].value
D。

a.getAttributeNode(”href")。

value
35.(单选题)查看如下代码:var str = "1 < 2"; console.log(str);console.log(eval(str));执行后的结果是(A)。

A.1 < 2 和true
B。

true 和true
C.先输出1 〈2,然后程序错误
D.以上均不对
36(单选题)有下述JS代码:var i = 0; var sum = 0;do{ i++; if(i%2 === 0){continue;} if( i%5 === 0){ break; }sum += i;}while(i〈10 );console。

log('sum=’ + sum ); 其运行结果应该是下列哪项(B)。

A。

sum=0
B.sum=4
C.sum=Infinity
D。

死循环
38.(单选题)有html 代码如下:〈body〉〈div id=”d1"〉<span〉bb</span〉</div> </body> 还有JavaScript 代码如下:var obj = document.getElementById(”d1"); var newObj = document。

createElement("p");newObj.innerHTML = ”text"; obj。

insertBefore(newObj, obj。

firstChild);console.log(obj.innerHTML); 上述代码的输出结果是(B).
A。

<p〉text<span>bb〈/span〉〈/p〉
B.〈p>text</p〉〈span〉bb</span>
C。

<span>bb〈/span>〈p〉text〈/p>
D。

代码错误
39。

(单选题)下列选项中,能够在新的浏览器窗口或者标签页中打开目标页面的是(C).
A.location。

href = ”http s://www.baidu。

com”;
B.history.go(”http s://");
C。

window。

open(”http s://www。

baidu。

com”);(新窗口打开)
D。

location.replace(”http s://") (本窗口打开)
40.(单选题)查看如下代码:var x = ”10";function f1(x ){x = x+2; return x; }console。

log(x); x = f1(x); console。

log(x);执行后的结果是(A)。

A。

10 和102
B.10 和10
C。

undefined 和102
D.10 和12
42。

(单选题)查看如下代码:var arr1 = [10, 20]; arr1。

push( 30,40 ); arr1.pop();arr1.push ([50,60]);arr1。

pop(); console。

log(arr1。

toString()); 执行后的结果是(A).Pop(删除末端元素)
A.10,20,30
B.10,20
C。

10,20,30,50
D.10
43。

(单选题)有html 代码如下:〈p id=”msg"〉通知:<span>消息〈/span〉</p〉还
有JavaScript 代码如下:var p = document。

getElementById(’msg’);console.log (p.nodeValue ); console。

log( p.textContent ); 上述代码的输出结果是(B).
A。

先输出“通知:”,再输出“通知:消息”
B.先输出null,再输出“通知:消息”
C。

先输出null,再输出“消息"
D.先输出“通知:",再输出“<span〉消息〈/span〉"
44.(单选题)查看如下代码:var score = 75;var result = score 〉= 90 ?”aa” : (score>=80 ?”bb” :(score < 60 ?"cc” :"dd”));console。

log(result); 上述代码的输出结果是(D)。

A.aa
B.bb
C。

cc
D.dd
45。

(单选题)查看如下代码:var x = 10; function f1(num ){ return num++; }var y = f1( x );
console。

log(x); console。

log(y);执行后的结果是(B)。

A。

10 和11
B。

10 和10
C。

11 和10
D.11 和11
46.(单选题)有html 代码如下:
<div id="d1”〉
<span〉bb〈/span〉
〈/div> 还有JavaScript 代码如下:
var obj = document。

getElementById(”d1");console。

log(obj.firstChild.nodeName);上述代码的输出结果是(C)。

A.span
B。

SPAN
C。

#text
D。

#TEXT
48.(单选题)页面上有一个提交按钮,单击该提交按钮后,需要弹出确认对话框.如果单击对话框上的“取消”按钮,则页面停留在当前页面;如果单击对话框上的“确定”按钮,则发生表单提交。

为实现此功能,以下代码中,正确的是()。

A。

<form> 〈inpu t type=”submit" value="delete” onclick="return confirm('真的要删除吗?');" /> 〈/form〉
B.<form> 〈input type="submit” value=”delete” onclick=”confirm('真的要删除吗?’);" /> </form>
C。

<form〉〈input type=”button” value="delete” onclick="return confirm(’真的要删除吗?’);” /> 〈/form〉
D.〈form〉〈input type=”button” value="delete" onclick=”confirm(’真的要删除吗?’);” /> 〈/form〉
50。

(单选题)查看如下代码:function func1(num){ if(num < 0)console。

log(”负数”); else if(num === 0) console.log("零”);else if(num 〉0)console。

log("正数"); else console。

log("非数字"); } func1("—1"); func1("0”);执行后的结果是(D).
A。

“非数字"和“非数字”
B.“负数”和“零”
C.“非数字”和“零”
D。

“负数"和“非数字”
51.(单选题)有下述JS代码:var status = ’党员';switch( status ) { case '党员’:console。

log('您好!党员!’);case ’团员':console.log('您好!团员!'); default:console。

log(’您好!群众!’);} 其运行结果是下列的哪一项(C)。

A.您好!党员!
B.您好!党员!您好!团员!
C。

您好!党员!您好!团员!您好!群众!
D。

执行错误
52。

(单选题)有JavaScript 代码如下:var jsObj = 空白处;alert(jsObj。

name + ”:” + jsObj。

score。

math); 现需要实现,弹出结果为“mary:85”。

下列选项中,能填入横线空白处的正确代码是(A)。

A.{’name':' mary', 's core': { 'en’: 90, ’math’: 85} }(mary:85)
B。

”{’name': ’ mary’,’score’: { 'en’: 90, ’math’: 85}}"
C。

{ ’name':' mary’,’score。

math’:85 }
D."{ ’name’: ' mary’,'score.math’: 85 }”
53。

(单选题)有下述JS代码:var x = 10;var y = 20; var z = x〈y ? x++ :++y ; console。

log ('x=' + x + '; y=' + y + '; z=’ + z);其运行结果是(B).(注意区分实际值和返回值)
A.x=11;y=21; z=11
B.x=11;y=20; z=10
C。

x=11;y=21;z=10
D。

x=11; y=20; z=11
54.(单选题)查看如下代码:var a = ”10”;var b = 10; console。

log (a+1 == b + 1);上述代码的输出结果是(B).(字符串与数字)
A。

true
B。

false
C。

程序错误
D.undefined
55。

(单选题):function f1(){x = 10; ++x;} f1();console.log(x);执行后的结果是(B)
A.10
B.11
C。

Undefined
D。

程序错误
56。

(单选题)有html 代码如下: 〈body> <p id=”p1"〉回复<a〉10</a〉〈/p> 〈/body〉还有JavaScript 代码如下:var p = document。

getElementById('p1'); console.log (p.firstChild.innerHTML); console.log(p。

firstElementChild.innerHTML);上述代码的输出结果是(C)。

A。

代码错误
B。

两次都输出10
C.先输出undefined,再输出10
D.先输出“回复”,再输出10
57。

(单选题)查看如下代码: function func1(arr) { for(var data in arr){data++;}for(var i=0;i〈arr。

length;i++){arr[i]++;} } var datas = [10,20];func1(datas);console.log (datas.toString());执行后的结果是(B)。

A。

10,20
B.11,21
C.12,22
D.13,23
58。

(单选题)在HTML文档中包含一个超链接,要实现当鼠标移入该链接时,超链接文本大小变为30px。

下列选项中,正确的是(A).
A.<a href="#" onmouseover=”this。

style。

fontSize=’30px'”>注册〈/a〉
B。

〈a href=”#” onmouseover =”this.style.font-size=’30px’"〉注册〈/a>
C。

<a href=”#” onmouseover="this.style.fontsize=’30px’"〉注册〈/a>
D。

<a href="#" onmouseover=”this.style.font。

size=’30px'"〉注册〈/a〉
59.(单选题)下列有关for(;;)循环和for(in)循环的表述中,错误的是(D)。

对于可变数组进行枚举操作时,你不能通过添加或删除对象这类操作来改变数组容器。

如果你这么做了,枚举器会很困惑,而你将得到未定义的结果.
A.for(;;)循环可以得到顺序、倒序、跳序的下标,故可以顺序、倒序、跳序遍历集合中的每个元素;
B.for(in)循环可以得到顺序、倒序、跳序的下标,故可以顺序、倒序、跳序遍历集合中的每个元素;
C.for(;;)循环可以修改集合中值;
D。

for(in)循环可以修改集合中值;
60.(单选题)查看如下代码:function func1(n){ var arr = [1,1];for(var i=0;i<n;i++){ arr[i+2]= arr[i] + arr[i+1];} return arr[n-1];} console。

log(func1(7)); 上述代码运行后,输出结果是(C)。

A。

undefined
B。

8
C。

13
D。

21
61。

(单选题)查看如下代码:var a = 20;var b = "2”; var c = (a+1)/b; document。

write (c);上述代码的输出结果是(A)。

A。

10.5
B。

10
C。

11
D.(20+1)/2
63.(单选题)有下述JS代码:var arr = [10, 20,30];function add( arrayObj ){for(var
i in arr){arrayObj[i]++;} console。

log(arrayObj ); }add(arr ); console。

log( arr ); 此段代码执行后的结果是(D)。

A。

[10,20,30] [10,20,30]
B.[11,21,31] [10,20,30]
C.[10,20,30][11,21,31]
D.[11,21,31][11,21,31]
64.(单选题)下列关于JavaScript中数组的描述中,错误的是(B )。

A.var arr = [3];创建了一个长度为1的数组,值为3。

B.var arr = new Array(3);创建了一个长度为1的数组,值为3。

(长为3,值为空)
C.var arr = [ [3]]; 创建了一个长度为1的数组,值为一个长度为1的数组。

D.var arr = new Array( [3] ); 创建了一个长度为1的数组,值为一个长度为1的数组。

65.(单选题)有下列代码:var x = 10;function f1( num ){ ++ num; }var y = f1(x ); console。

log( 'x=' + x + ';y=’ + y ); 执行后的结果是(A)。

A.x=10; y=undefined
B。

x=10; y=11
C.x=11; y=11
D。

x=11; y=undefined
66.(单选题)假设有一个整数数组numArray,下列哪个选项可以实现把其中的元素由小到大
排列(A B)。

A
A.numArray.sort();
B。

numArray。

sort( function(a,b){return a—b;});
C。

numArray.sort((function(a,b){return a-b;})());
D。

numArray.sort().reverse();
67。

(单选题)查看如下代码: var a = ”205.1"; var b = 2; console.log(b + a);console.log(isNaN(b
+ a)); 上述代码的输出结果是(A).
A.2205.1 和false
B.207。

1 和false
C.2205.1 和true
D。

207。

1 和true
68.(单选题)有html 代码如下:
<body〉
〈a>login〈/a>
〈div id=”news">
〈a>新闻标题1</a〉
<a class=”current”>新闻标题2</a>
<a〉新闻标题3〈/a〉
</div〉
〈/body> 还有JavaScript 代码如下: var div = document。

querySelector(’#news’);var aNodes = div。

querySelectorAll('a’); console。

log(aNodes.length); var node = div。

querySelector(’a。

current’);console.log(node.innerHTML);上述代码的输出结果是(A)。

A。

先输出3,再输出“新闻标题2"
B。

先输出4,再输出“新闻标题2”
C。

先输出3,再输出null
D。

先输出4,再输出null
69.(单选题)有下述JS代码:function printArray( arr ){for(var i in arr){ if( arr[i] instanceof Array ){printArray( arr[i] );}else{ document.write( arr[i]+ ’ ' );} } }var data = [ 1, [20,21],[[301,302],[310,311]]];printArray( data ); 上述代码的输出结果是(A)。

A。

1 20 21 301 302 310 311
B。

1 20 301
C.无限递归
D.代码错误
70。

(单选题)查看如下代码:function triangle(num) {var result = [[1],[1,1]];for (var i = 2;i 〈num;i++){result.push([1]); for (var j = 1; j < i;j++) { result[i][j]= result[i — 1][j - 1] + result[i - 1][j]; } result[i][i] = 1; } return result;} var arr = triangle(5); console。

log(arr[4].toString());上述代码运行后,输出结果是(B)。

A。

1,3,3,1
B。

1,4,6,4,1
C。

1,5,10,10,5,1
D.以上都不对
71.(单选题)现需要实现每隔一秒钟弹出一个对话框,且此弹出过程持续5秒钟。

下列选项中,正确的是(B)。

A。

var id = setInterval(alert(”Hello JavaScript”),1000); setTimeout(clearInterval(id),5*1000);B。

setInterval(function(){alert("Hello JavaScript”);},1000) setTimeout(function(){alert("Hello JavaScript");},5*1000)
C。

setInterval(alert(”Hello JavaScript”),1000); setTimeout(clearInterval(id),5*1000); D。

varid=setInterval(function(){alert(”HelloJavaScript”);},1000) setTimeout(function(){clearInterval(id);},5*1000)(无限弹框)
72.(单选题)html 页面上有一个id 为b1 的按钮,现需要使用JavaScript 代码为其定义单击事件:单击该按钮后,弹出“js”。

下列选项中,错误的是(C)。

A。

document。

getElementById("b1”).onclick = function() { alert("js"); };
B。

document.getElementById(”b1”)。

onclick = new function(){ alert(”js”); };
C.d ocument.getElementById("b1”)。

onclick = new Function(”alert(js); ");
D。

document。

getElementById(”b1").onclick = clickFunc; function clickFunc(){alert(”js");}
73.(单选题)有下述JS代码:var data = [100,3,20]; for(var i=1;i〈data。

length;i++){for(var j=0; j<data.length-i;j++){ if(data[j]〈data[j+1]){var tmp = data[j]; data[j] = data[j+1];data[j+1]= tmp; } }}console.log(data ); 此段代码的执行结果是(C)。

A.[100, 3, 20]
B。

[3,20,100]
C。

[100, 20,3]
D。

死循环
74.(单选题)下述脚本代码,需要在页面实现了一个数字时钟,空白处脚本依次填写(B)。

〈script type=”text/javascript"〉var vID; window。

onload = function () { 空白处; }; window。

onunload = function (){空白处};function addFunc(){ var v = new Date();document.getElementById("mySpan")。

innerHTML = v.toLocaleTimeString(); }〈/script> A。

vID = window。

setTimeout(addFunc, 1000); window。

clearTimeout(vID);(定时数字时钟)
B.vID = window.setInterval(addFunc, 1000);window。

clearInterval(vID);(即时数字时钟)
C.vID = window。

setTimer(addFunc,1000);window。

clearTimer(vID);(函数失效)
D。

vID = window。

setDateTime(addFunc,1000); window.clearDateTime(vID);(函数失效)
75.(多选题)页面上有一个id为course的下拉列表框,下面选项中,能向下拉列表中添加一个新的选项的是()。

A。

document.course。

add(new Option("JS"));
B。

var newObj = document。

createElement("option”); newObj.innerHTML = ”JS”; document。

course.add(newObj);
C。

document.getElementById("course”)。

add(new Option("JS”));
D.var newObj = document。

createElement(”option”); newObj.innerHTML = "JS"; document。

getElementById(”course")。

add(newObj);
76.(单选题)JavaScript中的Global对象用于收集所有的全局函数,下列不是全局函数的有哪些()。

Js全局函数(escape(),eval(),isNan(),isFinite(),parseFloat(),parseInt(),unescape();
js包含三大对象(1.内置静态对象2。

本地对象非静态 3.宿主对象DOM BOM内存活)

A.setTimeout()
B.getElementById( )
C.parseInt()
D。

alert()
77。

(多选题)下列哪些方法可以在数组尾部添加一个新元素(C D).
A。

arr[ ]= 10;
B。

arr[arr。

length ] = 10;
C.arr[ arr。

length+1 ]= 10;
D。

arr.push(10 );
78。

(多选题)查看如下代码:var n = 5;var result = ; console。

log(result);现需要判断变量n 的值是否为10:如果为10 ,则输出“对了”;如果比10小,则输出“小了";否则输出“大了”。

为实现此功能,横线处的代码为( C D)。

A.n == 10 ?(”对了” : n 〉10 ? "大了” : ”小了”)
B.n == 10 ?(”对了” :n 〉10) ? (”大了” : ”小了”)
C.n == 10 ? ”对了” : (n > 10 ?”大了” :”小了”)
D。

n == 10 ? "对了" : n 〉10 ?”大了" : ”小了"
79.(多选题)有html 代码如下:
<select id=”datas" size=”5">
<option>aa〈/option〉
<option>bb〈/option〉
<option>cc〈/option>
</select>
现需要删除列表框中的第二项(文本为bb的选项)。

下列选项中,正确的是(A B )。

A.varobj=document。

getElementById("datas"); obj.removeChild(obj。

firstElementChild.nextElementSibling);
B.varobj=document.getElementById(”datas");obj.removeChild(obj.getElementsByTagName (”option”)[1]);
C.
var obj = document。

getElementById("datas”); obj.removeChild(obj。

firstChild.nextSibling);
删除了aa
D.
var obj = document。

getElementById("datas”); obj。

removeChild(obj.getElementsByTagName("option”)[0]);
删除了aa
80、(多选题)下述哪些选项执行时不会出错( A D)
var userAge = 10;
A.console.log(userAge++ 〉10 && userName==’tom' ); (false)
B.console。

log(userAge++ 〉= 10 && userName=='tom' );
错误:name not definde
C.console.log( ++userAge < 10 || userName==’tom' );
D.console.log( ++userAge > 10 ||userName==’tom' ); (true)
81、(单选题)已知字符串',a,,b,'其中没有空白字符,使用逗号对其进行拆分,得到的结果是如下哪一项:A
(A)[null, ’a’, null,'b’, null]
(B) [’’,’a’, ’', ’b', ’']
(C)[null, 'a’, null, ’b']
(D) ['', ’a','', 'b’]
(E)[’a',’b’]
84、(单选)声明一个对象,给它加上name属性和show方法显示其name的值;以下代码正确的是
A var obj={name:”zhangsan”,show:function(){alert(name);}};
B var obj={name:”zhangsan",show:{alert(this。

name);}};
C varobj={name:”zhangsan",show:function(){alert();}};
D var obj={name:”zhangsan”,show:function(){alert(name);};
85、(单选)分析下面的JavaScript代码段,输出结果是:(A)var a=new Array(2,4,4,5,6);
Var sum = null;
for(var i=0;i<a.length;i++){
sum +=a[i]};
document。

write(sum);
A.21
B.24456
C.2,4,4,5,6 D 19
86、(单选)在javascript里下列选项中不属于数组的方法是(B)
A sort(指定顺序)
B length()
C concat(组合)
D reverse (逆序)
87、(单选)javascript 中表达式parseInt(‘8x8’)+parseFloat (‘8’)的结果是什么?(C)
A 88
B 96
C 16 D8x88
88、(多选)以下关于Array数组对象的说法不正确的是(C D )A。

对数组里数据的排序可以用sort函数,如果排序效果非预期,可
以给sort函数加一个排序函数的参数
B. reverse用于对数组数据的倒序排列
C. 向数组的最后位置加一个新元素,可以用pop方法
D. unshift方法用于向数组删除第一个元素
89、下面的JavaScript语句中,( A)实现检索当前页面中的表单元素中的所有文本框,并将它们全部清空
A。

for(var i=0;i< form1。

elements。

length;i++) {
if(form1.elements.type==”text”)
form1。

elements.value="";}
B。

for(var i=0;i〈document。

forms.length;i++) {
if(forms[0]。

elements.type==”text”)
forms[0].elements。

value=”";

C. if(document。

form。

elements.typ e==”text”)
form.elements。

value=”";
D。

for(var i=0;i〈document。

forms。

length; i++){
for(var j=0;j<document。

forms。

elements.length; j++){if(document。

forms。

elements[j]。

type==”text")document.forms。

elements[j].value=”";


90、关于正则表达式声明6位数字的邮编,以下代码正确的是()A。

var reg = /\d6/;
B. var reg = \d{6}\;
C. var reg = /\d{6}/;
D。

var reg = new RegExp(“\d{6}");
91、(单选)那个对象包括了Open( A)方法
A.window B。

document C.location D.body
92、(单选)在JavaScript中,文本域中失去焦点事件是(A) A。

onblur B。

onLostFocused C。

onfocus D.onchange
93、( A)事件处理程序可用于在用户提交表单时执行函数
A.onsubmit B。

onclick C.onchange D。

onexit
94、分析下面的javascript代码段,输出的结果是: (B) var a=12.52;
b=10.35;
c=Math。

round(a);
d=Math.round(b);
document.write(c+d)
A。

22。

87 B。

23 C.22 D。

24
96、(单选题)有下述javaScript代码:
var i = 0; var sum = 0; do{ i++; if( i%2 === 0){ continue; } if( i%5 === 0){ break; } sum += i;}while( i<10 ); console.log ( 'sum=' + sum );
其运行结果应该是下列哪项(B)
A.sum = 0;
B.sum = 4; c.sum = 8 D。

死循环
97、(单选题)有html代码如下:
<body> 〈div id=”d1">〈span〉bb〈/span〉〈/div> 〈/body〉
还有 JavaScript 代码如下: var obj =
document.getElementById("d1"); var newObj = document。

createElement("p"); newObj。

innerHTML = ”text”;obj.insertBefore(newObj, obj。

firstChild); console。

log(obj。

innerHTML);
上述代码的输出结果是:(B)
A.〈p>text〈span〉bb〈/span〉〈/p〉
B.〈p>text〈/p〉〈span>bb</span>
C.〈span〉bb〈/span>〈p>text〈/p>
D.代码错误
98、(单选题)查看如下代码:
var score = 75; var result = score 〉= 90 ? "aa" : (score>=80 ? "bb" : (score 〈 60 ?”cc" : ”dd"));
Console.log(result);上述代码输出结果是(D)
A.aa
B.bb C。

cc D.dd
填空题
1、声明常量关键字____const_______
2、声明一个变量使用关键字______var______
3、JavaScript中命名法有_____匈牙利命名法__________、________下划线命名法__________、________大驼峰命名法__________、__________小驼峰命名法__________四种
4、检测给定变量的数据类型_____typeof、instanceof_________运算符
5、所谓对象,就是一种_________无序的对象____________集合,由若干个_____键值对_______构成
6、读取对象的属性,有哪两种方法:_____点运算符object.value________和_____方括号运算符 object[“value”]_________
7、数值键名不能使用______点________运算符
8、Base64转码的两个方法分别为____btoa()___________和_________atob()________
9、判断数组类型可以使用方法___Array.isArray()或instanceof Array_________________
10、在数组末端添加一个元素或多个元素使用的方法:___push ()____________
11、在数组末端删除一个元素或多个元素使用的方法:_____pop()__________
12、在数组第一个位置添加元素使用的方法:____unshift()___________
13、在删除数组第一个元素使用的方法:_____shift()__________
14、颠倒数组中元素的顺序使用的方法:______reverse()_________
15、_____任何类型______________数据都可以放入数组
16字符串截取方法____substring()_________、______substr()__________、_____slice()_____________
17、字符串就是零个或多个排在一起的字符,放在_____单引号_____和____双引号_____之间
18、去掉字符串两端空格使用________trim()______方法
19、javaScript中注释有几种?分别为哪些?
1、单行文本注释://
2、多行文本注释:/*…*/
3、文档注释:/**。

*/
20、javaScript中命名变量的标识符由哪四种字符构成?注意什么问题?
字母、数字、下划线和美元符号,其中数字不能作为标识符的首字母。

21、变量类型分为哪些?分别是什么?
变量类型分为:原始类项和引用类型
原始类型有:number、string、boolean、undefined、null
引用类型有:Function、Object、Array、Date等
22、根据变量命名规则,下列变量正确的是哪些?并指出错误
mygirl 、_mygirl 、$mygirl、6mygirl、%mygirl、mygirl-my 正确的是mygirl、_mygirl、$mygirl
错误的是:6mygirl(数字不能开通)、%mygirl(只能有字母数字下划线和$符号)、mygirl—my(只能含有字母数字下划线和$f符号)
23、break语句和continue语句区别
Break:是用来结束本次整体循环;
Continue:是结束本次循环,进行下一次循环
24、解释一下比较运算符中“==”与“===”区别
‘==’:比较两个变量值是否相等
‘===’:用来比较两个变量值是否相等,以及两个变量类型是否相等。

25、生成对象的3种方法有哪些?
Var obj={};
Var obj=new Object();
Var obj=Object。

create(null);
26、改变浏览器位置的方法:3个(效果是一样的)_______window。

location=''________________、________document。

location。

href=’’________________________、_________document。

location.assign
(‘’)______________
27、用来选中当前文档中的元素可以用哪些方法?分别解释
1、querySelector(): css选择器:element、id、class,返回匹配指定的CSS选择器的元素节点.如果有多个节点满足匹配条件,则返回第一个匹配的节点,如果没有发现匹配的节点,则返回null;
2、querySelectorAll(): css选择器:element、id、class,返回匹配的指定CSS选择器的元素节点的集合;
3、getElementById(): 通过id查找指定元素,返回一个匹配的节点;
4、getElementsByClassName();通过class查找指定元素,返回匹配的集合;
5、getElementsByTagName();通过element查找指定元素,返回匹配的集合;
6、getElementsByName();通过拥有name属性的元素查找匹配的元素,返回匹配的集合。

简答题
1、请写出字符串转换成数组及数组转换成字符串的方法
字符串转换为数组:split();(以参数为规则分割字符串)
数组转换为字符串:toString()和join()(以参数作为分割符)
2、请写出数组去重代码
//函数上:
var arr = [’hello’,’node’,'element’,’node',
'hello’,'blue’,’red'];
var tamp=[];
function quchong(x){
for(var i=0;i〈 x。

length;i++){
if(tamp.indexOf(x[i])==-1){
tamp。

push(x[i]);
}

return tamp;
}
console。

log(quchong(arr));
//原型链上
var arr = [’hello’,'node','element’,'node',’hello','blue’,’red’];
function Array(){};
Array.prototype.quchong=function(x){
var tamp=[];
for(var i=0;i〈 x。

length;i++){
if(tamp.indexOf(x[i])==—1){
tamp。

push(x[i]);

}
return tamp;
};
var subArray=new Array();
console.log(subArray。

quchong(arr));
3、请写出字符串‘’qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM"中随机获取其中5个的代码
Var
str='qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM'; var tamp='';
function suijishu(x){。

相关文档
最新文档