一、 选择题(60分,3分/题)
1. 下面描述错误的是( B )
A. Javascript是一种脚本语言
B. Javascript中函数是可重载的
C. Javascript是可以创建和使用对象的
D. ECMAScript支持实现继承,而且其实现继承的主要是依靠原型链来实现的
2. 以下哪个选项的数据类型只有两个数值( A )
A. Boolean
B. Number
C. String
D. Object
3. 对null进行typeof运算,结果为( C )
A. Null
B. String
C. Object
D. undefined
4. 请选择结果为真的表达式( C )
A. undefined == 0
B. null == 0
C. "5" == 5
D. NaN == NaN
5. 如果有如下定义:var result = 0||5;那么result的值为( B )
A. 0
B. 5
C. true
D. false
6. 如果有如下定义:var result = 8>>3;那么result的值为( D )
A. 8
B. 4
C. 2
D. 1
7. 下面程序运行的正确结果是( C )
var result = 0;
label:
for(var i = 0 ; i<10 ; i++ ){
for(var j = 0 ; j<10 ; j++){
if(i==5 && j == 5){
break label;
}
result ++;
}
}
A. 99
B. 95
C. 55
D. 25
8. 如果有如下定义:var result = "javascript".substring(4,0);那么result的值为( A )
A. java
B. ""
C. script
D. scri
9. 如果有如下定义:var result = Math.ceil("3.14"),那么result的值为( A )
A. 4
B. 3
C. 3.14
D. undefined
10. 以下http状态码描述错误的是( D )
A. 状态码200:请求已经成功,
B. 状态码404:请求失败,请求所得的资源不在服务器上
C. 状态码408:请求超时
D. 状态码503:请求的数据格式不正确
11. 在jsp文件中加载动态页面的指令是( A )
A. <%@ include file="" %>
B. Page指令
C. Taglib指令
D. <jsp:forword>指令
12. 下面命名不正确的选项是( B )
A. __name
B. 1name
C. $name
D. name1
13. 运行下面的程序后,result的值为( A )
function getValue(num1,num2){
return arguments[0];
}
var result = getValue(1,2);
A. 1
B. 2
C. 3
D. 运行出错
14. 运行下面的的程序后,两次alert时x的值正确的是( B )
var x = 1;
function getValue(){
alert(x);
var x = 2;
alert(x);
}
getValue();
A. 1和2
B. undefined和2
C. 2和2
D. undefined和 undefined
15. 运行下面的程序后,result的值正确的是( C )
var name = "Black";
var obj = {
name :"John"
getName:function(){
var name = "Tom";
return this.name;
}
}
var result = obj.getName();
A. "Black"
B. "Tom"
C. "Jhon"
D. undefined
16. 无序列表的html代码是( B )
A. <li><ul><ul></li>
B. <ul><li></li></ul>
C. <li><ol></ol></li>
D. <ol><li></li></ol>
17. 换行符的html代码是( C )
A. <hr>
B. <tr>
C. <br>
D. <hr></hr>
18. 表单提交方式有几种( B )
A. 1种
B. 2种
C. 3种
D. 4种
19. css中选择器不包括( A )
A. 超文本标记选择器
B. 类选择器
C. 标签选择器
D. ID选择器
20. css中盒模型属性不包含( D )
A. border
B. padding
C. margin
D. font
二、 填空题(10分)
1. 运行表达式:var result = (5,0)?1:2; result = ___2____;
2. Javascript中,如果定义:
var a = 1;
var b = "2";
if(++a == b){
b+=a;
}
经过运算后b的值为_____22_________
3. 运行表达式:var result = parseInt("1.5script"); result的值为:___1____;
4. IE下绑定事件的函数是_attachEvent_,FF下绑定事件的函数是_addEventListener_;
5. 在Mysql中,删除数据库bank的命令是:____drop database bank_______;
三、 简答题(30分)
1. 编写一个函数getCurrTime按照格式"xxxx年xx月xx日xx时xx分xx秒"获取当前时间.(5分)
参考答案:
function getCurrTime(){
var date = new Date();
var year = date.getFullYear();
var month = date.getMonth()+1;
month = month<10?("0"+month):month;
var day = date.getDate();
day = day <10?("0"+day ):day ;
var hours = date.getHours();
hours = hours <10?("0"+hours ):hours ;
var minutes = date.getMinutes();
minutes = minutes <10?("0"+minutes ):minutes ;
var seconds = date.getSeconds();
seconds = seconds <10?("0"+seconds ):seconds ;
return year+"年"+month+"月"+day+"日"+hours+"时"+minutes+"分"+seconds+"秒";
}
2. 给String的原型对象扩展一个trim方法,使其能够截取字符串的首尾空白符.(5分)
参考答案:
String.prototype.trim = function(){
return this.replace(/^\s+|\s+$/g,"");
}
3. 波纳切数列1,1,2,3,5,8,13(第一项,第二项都是1,从第三项开始都是前两项的和),请用递归算法定义fibonacci函数求第n项.(5分)
参考答案:
function fibonacci(n){
if(n<=2){
return 1;
}else{
return fibonacci(n-1)+fibonacci(n-2);
}
}
4. 写一个简单ajax示例,要求如下: (10分)
a) 请求的url为"login.action";
b) 发送的数据为"username=admin";
c) 发送异步get请求;
d) 请求成功后用alert弹出"success";
e) 兼容ie和FF
参考答案:
function sendAJAXRequest(){
var xmlHttp = null;
if(window.ActiveObjcet){
xmlHttp = new ActiveObjcet("Microsoft.XMLHTTP");
}else if(window.XMLHttpRequest){
xmlHttp =new XMLHttpRequest();
}else{
alert("浏览器不支持");
return;
}
xmlHttp.open("get","login.action?username=admin",true);
xmlHttp.onreadystatechange = function(){
if(xmlHttp.readyState == 4){
if(xmlHttp.status == 200){
alert("success")
}
}
}
xmlHttp.send(null);
}