一、单选题
1、下列事件哪个不是由鼠标触发的事件()
A、click
B、contextmenu
C、mouseout
D、keydown
2、下面关于CSS布局的描述,不正确的是?
A、块级元素实际占用的宽度与它的 width 属性有关;
B、块级元素实际占用的宽度与它的 border 属性有关;
C、块级元素实际占用的宽度与它的 padding 属性有关;
D、块级元素实际占用的宽度与它的 background 属性有关。
3、下面有关html的描述,不推荐的是?
A、在页面顶部添加 doctype声明;
B、在 </head> … <body> 中间插入 HTML 代码;
C、避免使用 <font> 标签;
D、使用 <table> 元素展现学生成绩表等数据。
4、浏览器在一次 HTTP 请求中,需要传输一个 4097 字节的文本数据给服务端,可以采用那些方式?
A、存入 IndexdDB
B、写入 COOKIE
C、放在 URL 参数
D、写入 Session
E、使用 POST
F、放在 Local Storage
5、下面哪个属性不会让 div 脱离文档流(normal flow)?
A、position: absolute;
B、position: fixed;
C、position: relative;
D、float: left;
二、填空题
6、javascript 语言特性中,有很多方面和我们接触的其他编程语言不太一样,比如说,javascript语言实现继承机制的核心就是 ( 1 ),而不是Java语言那样的类式继承。Javascript 解析引擎在读取一个Object的属性的值时,会沿着( 2 ) 向上寻找,如果最终没有找到,则该属性值为( 3 ); 如果最终找到该属性的值,则返回结果。与这个过程不同的是,当javascript解析引擎执行“给一个Object的某个属性赋值”的时候,如果当前Object存在该属性,则改写该属性的值,如果当前的Object本身并不存在该属性,则赋值该属性的值 。
7、填写内容让下面代码支持a.name = “name1”; b.name = “name2”;
function obj(name){ ( 1 ) } obj. ( 2 ) = "name2"; var a = obj("name1"); var b = new obj;8、输出对象中值大于2的key的数组
var data = {a: 1, b: 2, c: 3, d: 4}; Object.keys(data).filter(function(x) { return ( 1 ) ;})
期待输出:[“c”,”d”]
三、程序题
9、请实现一个fibonacci函数,要求其参数和返回值如下所示:
/** *@desc: fibonacci *@param: count {Number} *@return: result {Number} 第count个fibonacci值,计数从0开始 fibonacci数列为:[1, 1, 2, 3, 5, 8, 13, 21, 34 …] 则getNthFibonacci(0)返回值为1 则getNthFibonacci(4)返回值为5 */ function getNthFibonacci(count) { }
参考答案
一、单选题
1、D 2、D 3、B 4、E 5、C
二、填空题
6、(1)prototype(2)原型链(3)undefined
7、(1)if(name){ this.name = name;}return this;(2)prototype.name
8、data[x]>2
三、编程题
9、参考答案
function getNthFibonacci(count) { if(count<0) return 0; if(count<=1) return 1; var first = 1; var second = 1; var third = 0; for(var i = 2; i <= count; i++) { third = first + second; first = second; second = third; } return third; }