面试题目

一、请写出以下代码运行结果

1 var str = 'hello';
2 (function(){
3    conso.log(str)
4    var str = 'world'  
5 })()

结果是:undefined

二、请写出以下代码运行结果

 1 function fun(){
 2   var a = function(){
 3     console.log(1)      
 4   }
 5    return this 
 6 }
 7 
 8 func.prototype.a = function(){
 9   console.log(2)        
10 }
11 
12 var a = function(){
13 console.log(3)
14 }
15 
16 function a(){
17   console.log(4)
18 }
19 
20 //请写出以下代码运行结果
21 fun.a()
22 a()
23 fun().a()
24 a()
25 new fun.a()
26 new fun().a()

三、argument和Array的区别;怎么将argument转成真正的Array

四、vue v-model双向绑定的原理,自己如何实现一个input子组件双向绑定

五、需要发送一个事件轮询,前后发起请求时间间隔必须大于一秒。如果第一次发送请求返回后时间小于一秒,则必须等到一秒后发送第二次请求,若第一次发送请求返回时间超过一秒则马上发起第二次请  求,怎么解决,有几种解决方式。

六、如何使高度不确定的元素在容器内部上下垂直居中;有几种方法(考虑transform:translate方式)。

方法一:绝对定位

div{position: absolute;top: 50%;left: 50%;transform: translate(-50%,-50%);}

重点在transform: translate(-50%,-50%);

不兼容不支持transform的浏览器

方法二:flex布局

div{display: flex;align-items: center;justify-content: center;}

方法三:table布局

div.parent{display: table; width:100%; height:100%}

div.child{display:table-cell;vertical-align: middle}

七、vuejs自定义组件实现v-model功能。

posted @ 2019-07-04 16:50  extroxe  阅读(134)  评论(0)    收藏  举报