阿里巴巴2016前端开发工程师笔试(二)

来源:互联网 发布:女生自夸的网络句子 编辑:程序博客网 时间:2024/05/18 02:16
1、下列哪个操作是W3C标准定义的阻止事件向父容器传递:
答案: C
A、e.preventDefault()
B、e.cancelBubble=true
C、e.stopPropagation()
D、e.stopImmediatePropagation()
2、以下关于盒子模型描述正确的是:
答案: A
A、标准盒子模型中:盒子的总宽度 = 左右margin + 左右border + 左右padding + width
B、IE盒子模型中:盒子总宽度 = 左右margin + 左右border + width
C、标准盒子模型中:盒子的总宽度 = 左右margin + 左右border + width
D、IE盒子模型中:盒子总宽度 = width
3、使用CSS的flexbox布局,不能实现以下哪一个效果:
答案: D
A、三列布局,随容器宽度等宽弹性伸缩
B、多列布局,每列的高度按内容最高的一列等高
C、三列布局,左列宽度像素数确定,中、右列随容器宽度等宽弹性伸缩
D、多个宽高不等的元素,实现无缝瀑布流布局
4、关于HTML语义化,以下哪个说法是正确的?
答案: D 
A、语义化的HTML有利于机器的阅读,如PDA手持设备、搜索引擎爬虫;但不利于人的阅读
B、Table 属于过时的标签,遇到数据列表时,需尽量使用 div 来模拟表格
C、语义化是HTML5带来的新概念,此前版本的HTML无法做到语义化
D、header、article、address都属于语义化明确的标签
5、关于HTTP协议,下面哪个说法是正确的?
答案: C 
A、HTTP协议是有状态协议。
B、以下是一个Http链接的response 的响应头: GET /xxx/xxx/js/lib/test.js HTTP/1.1 Host: 127.0.0.1 Connection: keep-alive Pragma: no-cache Cache-Control: no-cache Accept: */*
C、RESTful 接口中,利用HTTP协议的method字段来描述要对资源操作的方式,比如GET表示获取资源,POST表示新增一个资源,PUT表示更新资源,DELETE 表示删除资源等等。
D、一个HTTP请求返回的HTTP状态码中,304表示临时重定向。
6、使用 for in 循环数组中的元素会枚举原型链上的所有属性,过滤这些属性的方式是使用 ___函数
答案:
hasOwnProperty
7、在空白处填入适当的代码使输出结果成立:
function showMoney( ) {
____
};
var personA = new Object;
var personB = new Object;
personA.money= "100";
personB.money= "150";
personA.showMoney= showMoney;
personB.showMoney= showMoney;
输出结果:
console.log(personA.showMoney( )); //"100"
console.log(personB.showMoney( )); //"150"
答案:
return this.money;
8、删除给定数组中的第二项和第三项,并且在得到的新的数组中第一项后面添加一个新的值
var arr1 = ['a','b','c','d','e'];
var arr2 = arr1.__(__,__,'newvalue')
答案:
splice
1
2
9、写一个求和的函数sum,达到下面的效果
// Should equal 15
sum(1, 2, 3, 4, 5);
// Should equal 0
sum(5, null, -5);
// Should equal 10
sum('1.0', false, 1, true, 1, 'A', 1, 'B', 1, 'C', 1, 'D', 1,
  'E', 1, 'F', 1, 'G', 1);
// Should equal 0.3, not 0.30000000000000004
sum(0.1, 0.2);
答案:
function sum(...arr){
    if(arr.length===0){return ;}
    var sum=0;
    for(var i=0;i<arr.length;i++){
        if(!isNaN(parseFloat(arr[i]))){
            sum+=parseFloat(arr[i])||0;
        }
    }    
    return sum.toFixed(3)*1000/1000;
}
10、请写一个表格以及对应的CSS,使表格奇数行为白色背景,偶数行为灰色背景,鼠标移上去时为黄色背景。
答案:
<table class="table">
  <tr><td>第一行</td></tr>
  <tr><td>第二行</td></tr>
  <tr><td>第三行</td></tr>
  <tr><td>第四行</td></tr>
</table>


<style>
  .table tr:nth-child(2n-1){
      background-color:white;
  }
  .table tr:nth-child(2n){
      background-color:grey;
  }
  .table tr:hover{
      background-color:yellow;
  }
</style>
11、写一个traverse函数,输出所有页面宽度和高度大于50像素的节点。
答案:
function traverse(){
var domNodes=document.querySelectorAll('body *');
var arr=[...domNodes];
arr.filter(function(item){
return item.offsetWidth>50&&item.offsetHeight>50;  
});
return arr;
原创粉丝点击