畅捷通前端面试题

来源:互联网 发布:同城团购用什么软件 编辑:程序博客网 时间:2024/05/29 10:57

一、请写出一下每行代码的输出结果(6分)

!!(0 == false)!!(0 == undefined)undefined == nullisNaN(1312") == NaNtypeof 1 == true ? 1: 0typeof [] == "array"[] instanceof Array

二、请正确的写出下面代码在现代浏览器控制台中输出的结果(5分)

 for(var i = 0; i < 3; i++){    setTimeout(function(){      console.log(i);    },(function(){      var b = i * 1000;      console.log(b);      return b;    })());  }

三、请实现一个bind方法来传递this作用域和参数(10分)

 //函数,bind(上下文参数,普通参数1,普通参数2...);  var dom = document.getElementById("ab");  dom.onclick = (function(){    console.log(this);  }).bind(this);

四、类和继承(10分)

场景:
1.有一个鸭子类Duck,有颜色属性color,还有会叫的方法quack();
2.有一个玩具鸭子继承自Duck,玩具鸭子有一个方法play()。请用混合继承(构造方法和原型链)的方式写出一个Duck和子类DuckToy的实现;

五、DOM事件(10分)

有如下列表的DOM结构,请写出监听li元素上的click事件,并且获得li的内容。
要求:
1.不能修改DOM
2.使用原生javascript实现。不能借用其他框架,类库
3.需要兼容IE8+,Chrome,Firefox等浏览器

<div>  <li></li>  <li></li>  ...  <li></li>  <li></li></div>

六、阅读下面的代码片段,请问最后id=”node”的div背景颜色是什么?(3分)

#node{background:orange;}.list .classB{    background-color:yellow;}.classA{    width:100px;    height:100px;    color:red !important;}<div class="list">    <div id="node" class="classB classA" style="color:blue;"></div></div>

七、为了让下面大面片段中的div在浏览器中呈现的宽度是100px,请问box-sizing的值是多少?(4分)

.box{    box-sizing:______;    margin:10px;    padding:10px;    width:100px;    height:50px;    border:2px solid red;}<div class="box"></div>

八、使用javascript实现一个检测字符串是否符合回文规则的函数(10分)

回文:(指顺读和倒读都一样的词语。),就像“上海自来水来自海上”就是一个回文句。
要求:
1.不使用类似reverse()之类的函数
2.注意性能

0 0
原创粉丝点击