1:下列事件哪个不是由鼠标触发的事件()

正确答案: D   你的答案: D (正确)

A、click

B、contextmenu

C、mouseout

D、keydown解析:
click是鼠标点击事件
contextmenu 是当浏览者按下鼠标右键出现菜单时或者通过键盘的按键触发页面菜单时触发的事件
[ 试试在页面中的 <body> 中加入onContentMenu="return false" 就可禁止使用鼠标右键了 ]
mouseout 事件会在鼠标指针移出指定的对象时发生。
keydown 事件会在用户按下一个键盘按键时发生,由键盘触发
2:下面关于CSS布局的描述,不正确的是?

正确答案: D   你的答案: D (正确)

A、块级元素实际占用的宽度与它的 width 属性有关;

B、块级元素实际占用的宽度与它的 border 属性有关;

C、块级元素实际占用的宽度与它的 padding 属性有关;

D、块级元素实际占用的宽度与它的 background 属性有关。

解析:

块级元素的宽度是指块级元素内容区、左右内边距、左右边框和左右外边距的宽度之和。而块级元素内容区的宽度由该元素的width属性来表示(或设置)。(w3c标准盒子模型)

3:下面有关html的描述,不推荐的是?

正确答案: B   你的答案: B (正确)

A、在页面顶部添加 doctype声明;

B、在 </head> … <body> 中间插入 HTML 代码;

C、避免使用 <font> 标签;

D、使用 <table> 元素展现学生成绩表等数据。

解析:

HTML代码是插入在<body>..</body>之间,因为body是页面的主体部分,我们浏览网页的时候除了标题之外的东西都是在body中呈现的;

建议使用CSS样式(代替 <font>)来定义文本的字体、字体颜色、字体尺寸。

4:浏览器在一次 HTTP 请求中,需要传输一个 4097 字节的文本数据给服务端,可以采用那些方式?

正确答案: E   你的答案: E (正确)

A、存入 IndexdDB

B、写入 COOKIE

C、放在 URL 参数

D、写入 Session

E、使用 POST

F、放在 Local Storage解析:
IndexdDB 是 HTML5 的本地存储,把一些数据存储到浏览器(客户端)中,当与网络断开时,可以从浏览器中读取数据,用来做一些离线应用。

Cookie 通过在客户端 ( 浏览器 ) 记录信息确定用户身份,最大为 4 kb 。

url 参数用的是 get 方法,从服务器上获取数据,大小不能大于 2 kb 。

Session 是服务器端使用的一种记录客户端状态的机制 。

post 是向服务器传送数据,数据量较大。

local Storage 也是 HTML5 的本地存储,将数据保存在客户端中(一般是永久的)。

5:下面哪个属性不会让 div 脱离文档流(normal flow)?

正确答案: C   你的答案: C (正确)

A、position: absolute;

B、position: fixed;

C、position: relative;

D、float: left;

解析:

A:position: absolute;
生成绝对定位的元素,相对于 static 定位以外的第一个父元素进行定位;都绝对定位了,肯定脱离了文档流。。
B:position: fixed;
生成绝对定位的元素,相对于浏览器窗口进行定位;相对于浏览器了,也和正常顺序排下来没什么关系。。
C:position: relative;
生成相对定位的元素,相对于其正常位置进行定位。生成相对定位,也就是说还在原本的上下左右之间,上下左右的元素都不变,so这个没有能脱离文档流。。就这个了
D:float: left;都浮动出去了,还上哪保持原位置去。。

6:javascript 语言特性中,有很多方面和我们接触的其他编程语言不太一样,比如说,javascript语言实现继承机制的核心就是 ___1____ ,而不是Java语言那样的类式继承。

Javascript 解析引擎在读取一个Object的属性的值时,会沿着 ____2____向上寻找,如果最终没有找到,则该属性值为_____3_____ ; 如果最终找到该属性的值,则返回

结果。与这个过程不同的是,当javascript解析引擎执行“给一个Object的某个属性赋值”的时候,如果当前Object存在该属性,则改写该属性的值,如果当前的Object本身并不

存在该属性,则赋值该属性的值 。

答案:
1、prototype
2、原型链
3、undefined
7:填写内容让下面代码支持a.name = “name1”; b.name = “name2”;

function obj(name){
    _____1_____
}
obj. ______2_____ = "name2";
var a = obj("name1");
var b = new obj;
答案:
1、 if(name){ this.name = name;}return this;
2、prototype.name
解析:
function obj(name){
    if(name){  //判断obj实例有没有name属性,如果有则给this对象,如果没有就从原型上找name 。
        this.name = name;
    }
    return this;
}
obj.prototype.name = "name2";
var a = obj("name1");
var b = new obj;
console.log(a.name); // name1
console.log(window.name); // name1
console.log(b.name); // name2
//一般函数直接调用,默认this执行全局window|global
//通过obj('name1')调用,返回this引用,并传给a, 此时a等于window对象,即可输出属性name值
//new操作, new obj 等价于 new obj() ,实例化一个对象,这时this指向obj,要拿到b.name的值
//需要保证name属性存在,属性查找原则是先查找当前实例有没有属性,如果有就直接使用,如果
//没有就到原型上面找,再没有就接着原型链一步一步,这里为了和a.name作属性区别,使用了if(name)有条件地构建this的属性name
//所以,现在实例name属性提供给a使用,原型上的name提供给b使用。
8:输出对象中值大于2的key的数组

var data = {a: 1, b: 2, c: 3, d: 4};
Object.keys(data).filter(function(x) { return ____1_____;})
期待输出:[“c”,”d”]

答案:data[x]>2
解析:
Object.keys(Object)
Array.filter(function)
Object是包含属性和方法的对象, 可以是创建的对象或现有文档对象模型 (DOM) 对象。
Object.keys(object)的返回值是 一个数组,其中包含对象的可枚举属性和方法的名称。
Array.filter(function)对数组进行过滤返回符合条件的数组。
Object.keys(data)的返回值为数组["a","b","c","d"],经过 filter(function(x) { return ; })过滤,返回值大于2的key的数组。x为返回数组的属性名称即“a"、"b"、"c"、“d”,则对应的属性值为data[x],比较语句为data[x]>2。
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) {
}
答案:
此题应该避免使用递归的方法,因为当count较大时,递归的方法耗时较长。
故考虑使用迭代法,可以使用数组记录每一项。
但此题只需要用到前面两项,从节约空间的角度讲不需要开辟数组。

1
2
3
4
5
6
7
8
9
10
11
12
13
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;
}

10:实现如下页面布局。核心区域左侧自适应,右侧固定宽度 200px

答案:

css代码:

.header{border: 1px solid #0f0;position: relative;
}
.header .logo{border: 1px solid #f00;width: 10%;height: 100px;margin: 5px;
}
.header .username{border: 1px solid #ccc;width: 10%;position: absolute;bottom: 5px;right: 5px;text-align: right;
}
.main{position: relative;
}
.main .content{margin-top: 5px;margin-bottom: 5px;height: 400px;width: 82%;border: 1px solid purple;
}
.main .aside{margin-left: 2%;width: 200px;border: 1px solid #f00;position: absolute;right: 0;top: 0;
}
.footer{border: 1px solid #ccc;text-align: center;
}
html代码:
<div class="container"><div class="header"><div class="logo">logo</div><div class="username">用户名</div></div><div class="main"><div class="content">content-自适应宽度</div><div class="aside">aside-定宽200px</div></div><div class="footer">footer</div>
</div>

阿里巴巴2016前端开发工程师笔试一相关推荐

  1. 前端开发工程师如何在2013年里提升自己【转】--2016已更新升级很多何去何从?...

    大部分人非常在意个人在技术上的提升.但是保持对新技术的了解是一项不小的挑战, 毕竟我们需要的信息在数量上过于庞大.2012年里,伴随着前端发展的是大量的革命性突破和对前端的重新定义. 我们在实践的路上 ...

  2. 2015年12月份学习总结,前端开发工程师的知识库指引

    本文摘录2015年12月份学习总结,创建日期:2016-01-03 14:01:01,有修改. 以下正文: 在9月份领到了一项任务是关于<前端开发工程师的知识库指引>,想了又想,而在我们现 ...

  3. 前端前端开发工程师_我们庞大的工程师团队会使用此前端开发指南

    前端前端开发工程师 by Yangshun Tay 阳顺泰 我们庞大的工程师团队会使用此前端开发指南 (Our large team of engineers use this front end d ...

  4. web前端项目实例网站_招聘 | 北京 | tSynsth系联设计 建筑设计师 / 室内设计师 / 项目负责人 / WEB前端开发工程师 / 实习生...

    关于我们 系联设计(Tuning Synesthesia ,tSynsth, TS)是一支由多元背景的设计师与软件工程师组成的国际团队,致力于想法与过程让设计 "可持续". 系联专 ...

  5. 前端开发工程师面试题2

    前端开发工程师面试题2 1.Doctype作用? 严格模式与混杂模式如何区分?它们有何意义? (1). 声明位于文档中的最前面,处于 标签之前.告知浏览器的解析器,用什么文档类型 规范来解析这个文档. ...

  6. 数据分析师、前端开发工程师、后端开发工程师分析(各岗位公司要求)

    数据分析师 阿里巴巴 计算机/数学/统计学等相关专业: 熟练掌握excel.SQL: 熟练使用 R.Python等语言,掌握数理统计.线性代数.数据挖掘等常用理论知识: 补充: 搭建业务监控指标体系并 ...

  7. 作为一名合格的前端开发工程师需要会哪些

    作为一名合格的前端开发工程师需要会哪些?web前端要学习的内容有很多,想要成为一名合格的web前端工程师,综合实力是要非常强的,来看看下面的详细介绍吧. 作为一名合格的前端开发工程师需要会哪些?前端开 ...

  8. 网易微专业之《前端开发工程师》学习笔记(1)

    何为网易微专业? 微专业是由网易云课堂联合各领域知名专家,以就业为导向,精心打造的职业培训方案. 按要求完成学习,考试通过可获得专业认定证书,令你求职或加薪多一份独特优势. 一个微专业包含了多门必修课 ...

  9. 前端开发工程师如何在新的一年里提升自己

    大部分人非常在意个人在技术上的提升.但是保持对新技术的了解是一项不小的挑战, 毕竟我们需要的信息在数量上过于庞大.2012年里,伴随着前端发展的是大量的革命性突破和对前端的重新定义. 我们在实践的路上 ...

最新文章

  1. c语言个人账册报告的课题来源,C语言个人账簿管理系统报告
  2. 世界上最富有的十大家族
  3. p4: php5ts.dll p5: 5.6.14.0,服务器httpd.exe 应用程序错误
  4. SQL Server调优系列进阶篇(查询优化器的运行方式)
  5. struts2学到屎挫死-学习笔记(4)
  6. C程序设计语言——基础概念
  7. Blender 常用快捷键记录 (二)
  8. java判断今天是否是节假日_java 判断日期是否是节假日
  9. 网络系统管理赛项之Debian七. 2021年全国职业院校技能大赛将挑选各省1人或1组队伍参赛
  10. 清北学堂模拟赛d4t4 a
  11. 笔记本电脑设置自动关机以及取消自动关机
  12. 强化学习11——为什么ADP需要持续激励条件?
  13. 微信小程序制作-----日历记事本
  14. Apache Log4j 2.0-rc1 发布
  15. 如何从零开始开发一款嵌入式产品!
  16. 【ChatGPT4】王老师零基础《NLP》(自然语言处理)第一课
  17. 2020-04-12
  18. 物联卡管理系统都有什么功能,物联卡后台使用说明
  19. 2021巨量千川营销通案
  20. 网络模拟和分析工具--Mahimahi的安装教程

热门文章

  1. <video> 标签快进不生效
  2. 国内首台商用人形双足机器人发展史
  3. COLVERN LM10/3M29电位计春天,宛若初见!
  4. win10电脑自带的office突然变成英文解决办法
  5. 解读BLM业务领先模型中的业务设计
  6. Flume使用Spooling Directory Source采集文件夹数据到hdfs
  7. 华北电力大学计算机学硕和专硕,华北电力大学非全日制研究生还分为学硕与专硕?...
  8. OpenStack安装部署报错记录,Error processing default value xxx for Opt type of HostAddress
  9. 叠氮PEG叠氮,N3-PEG-N3
  10. oracle账集和账薄,转载-Oracle R12 总账与子账的关系