Web-JAVASCRIPT开发面试题1及解答
一、 选择题(60分,3分/题)
1. 以下哪项不属于javascript的基本数据类型( D )
A. Null
B. Undefined
C. String
D. Date
2. 以下哪个单词不属于javascript关键字 ( D )
A. function
B. in
C. with
D. parent
3. 请选择结果为真的表达式( B )
A. NaN == NaN
B. null == undefined
C. NaN == null
D. 0 == null
4. 运行下面程序后,结果正确的是 ( D )
var a = 3;
var b = a++;
alert(a+","+b);
A. 3,3
B. 4,4
C. 3,4
D. 4,3
5. 如果有如下定义:var result = 0&&5;那么result的值是( C )
A. false
B. true
C. 0
D. 5
6. 运行下面程序后,结果正确的是( A )
var result = 0;
label:
for(var i = 0 ; i<10 ; i++ ){
for(var j = 0 ; j<10 ; j++){
if(i==5 && j == 5){
continue label;
}
result ++;
}
}
A. 95
B. 99
C. 55
D. 25
7. 如有如下定义:var result = "javascript".substring(4);那么result的值为( B )
A. Java
B. script
C. scrip
D. scri
8. 如有如下定义:var result = parseFloat("javascript1.5");那么result的值为( C )
A. 1.5
B. undefined
C. NaN
D. Null
9. 如有如下定义:var result = 2 << 2; 那么result的值为( C )
A. 1
B. 4
C. 8
D. 16
解答:2<<2和2的3次方相同。
10. 运行下面程序,结果正确的是( A )
var result = 0;
window.color = "red";
var o = {
color:"yellow"
}
function getColor(){
var color = "blue";
return this.color
}
var result1 = getColor.apply(this);
var result2 = getColor.apply(o);
alert(result1+","+result2)
A. red,yellow
B. blue,yellow
C. red, blue
D. blue,red
11. 运行下面程序,结果正确的是( A )
var result = Math.floor("3.14");
A. 3.14
B. 3
C. 4
D. "3.14"
12. 如有如下定义:var result = (1,5);那么result的值为( B )
A. 1
B. 5
C. 6
D. undefined
13. Javascript中,window.setTimeout会执行一个函数几次( A )
A. 1次
B. 2次
C. 无限次
D. 不执行
14. XMLHttpRequest对象有一个属性可以获得服务器传回的HTTP状态码,那么这个属性是:( A )
A. status
B. state
C. readystatus
D. readystate
15. 请选择结果为false的选项( D )
A. typeof "javascript" == "string"
B. typeof null == "object"
C. [] instanceof Array
D. null instanceof Object
16. 下列哪一项是在新窗口中打开网页文件( B )
A. __self
B. __blank
C. __parent
D. __top
17. 在网页中可以用来做超链接的标签是( D )
A. <div> ...</div>
B. <p>....</p>
C. <li>...</li>
D. <a></a>
18. 下面哪个属性是可以用来改变div背景色的( A )
A. background-color
B. bgcolor
C. color
D. bg-color
19. 下面哪个属性可以更改字体大小( C )
A. text-size
B. text-style
C. font-size
D. font-style
20. css中哪一项是边框颜色的语法( A )
A. border-color:<值>
B. text-align:<值>
C. letter-space:<值>
D. vertical-align:<值>
二、 填空题(10分,2分/题)
1. Javascript是一种_____脚本______语言,具有______面向对象性______;
2. var result = "javascript".indexOf("a"); result的值为_____1_____,var result = "javascript".charAt(4); result的值为_____s____;
3. 指定cookie生存周期的关键字是____expires_____
4. 使用数组的____join_____方法可以将数组中的元素连成一个字符串
5. mysql用户名是:root,密码是:1234的用户登陆本地数据库的命令是__mysql - u root -p 1234________;
三、 简答题(30分)
1. 正则表达式中i,g,m的含义(5分)
参考答案
i -- 表示不区分大小写模式
g -- 表示全局模式
m - 表示多行模式
2. IE和FF下给html元素绑定时间的函数分别是(5分)
参考答案:
IE:attachEvent
3. Ajax有几种状态,以及各个状态的含义(5分)
参考答案:
0 -- (未初始化) 还没有调用send()方法
1 -- (载入)已调用send()方法,正在发送请求
2 -- (载入完成)send()方法执行完成,已经接受到全部响应内容
3 -- (交互)正在解析响应内容
4 -- (完成)相应内容解析完成
4. 请用递归算法定义阶乘函数factorial (5分)
参考答案:
function factorial(num){
if(num<=1){
return 1;
}else{
num*factorial(num-1);
}
}
5. 已知数组var result = [1,2,1,4,5,6,4,7,5],请编写unique(parma)函数去除数组中的重复元素,即执行 var result = unique(result)后,result为[1,2,4,5,6,7].(10分)
参考答案:
function unique(parma){
var i = parma.length;
while(i--){
var a = parma[i];
var j = i;
while(j--){
if(parma[j] == a){
parma.splice(i,1);
break;
}
}
}
return parma;
}