一、请写出以下代码运行结果
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功能。