阿里笔试题菜鸡答的试卷

//评测题目: 无

题目1
如图可见区域container的总宽度为100%,内部有三个 div,column1宽度是400px,column2和 column3宽度相同。请补充CSS3来实现基于以下dom结构的布局。
已知的Dom结构:

column1
column2
column3
展现样式示例如图片地址:https://img.alicdn.com/tfs/TB12n1xbwMPMeJjy1XbXXcwxVXa-630-110.png .container { background-color: #67989c; padding: 5px; display: flex; }

.column {
display: inline-block;
line-height: 40px;
background: #fff;
margin: 5px;
}
.column-left {
width: 400px;
height: 100%;
}
.column-right {
height: 100%;
flex-grow: 1;
}

题目2

简单实现一个事件订阅机制,具有监听on和触发emit方法。
要求:
const event = new EventEmitter();
event.on(‘some_event’, (…args) => {
console.log(‘some_event triggered’, …args);
});
emitter.emit(‘someEvent’, ‘arg1’, ‘arg2’);

class EventEmitter {
constructor() {
this.handlers = {}
};
on(eventName, handler) {
if (!(eventName in this.handlers)) {
this.handlers[eventName] = [];
}
this.handlers[eventName].push(handler);
};
emit(eventName) {
let arr = […arguments];
arr.shift();
for (let i = 0; i < this.handlers[eventName].length; i++) {
this.handlers[eventName]i;
}
}
}

题目3
有一个对象X,内容如下,请写程序找出所有d的值:
const X = {
y: {
c: {
d: 1
}
},
z: {
e: {
d: 2
}
},
q: {
f: {
d: 3
}
},
o: {
m: {
g: {
h: {
d: 4
}
}
}
}
}

没答完,稍等

题目4:
用 Promise 实现一个函数,每 5s 判断一个随机数是否大于 3,
大于则打印一句日志 continue,小于则结束流程,若随机数一直大于 3,
程序在 60s 后也结束,并打印 done

function fn( content ) {
return new Promise(function( reslove,reject ) {
if(content>3){
resolve(true)
}else{
reject(false)
}
})
}
var number=Math.random();
var timer = setInterval(
fn(number).then(( data )=>{
console.log(‘continue’)
},( err )=>{
clearInterval(timer);
console.log(‘done’)
}), 5000);

setTimeout(function(){
clearInterval(timer);
console.log(‘done’)
}, 60000)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值