这个面试官问的题目比较开放,首先是自我介绍(一定要注意礼仪哦,工作年限,技术栈,最近写的项目,注意重点)
1.首先问了在项目中的难点,遇到的坑
(看你的思维逻辑,自学能力,会不会利用资源去找解决方案)
2.通过你的简历问一些基础的问题 像vue3的 hooks、组合式Api ......
以上的问题问得差不多就进入了在线笔试环节
3.不确定参数个数求和(ES6语法)(面试官就喜欢问新技术)
sum(...arr){ let result = arr.reduce((t,c)=>{ return t+=c }) }, sum(1,3,5,8)
4.第二个笔记题是写sleep 延时执行
sleep(time){ return new Promise(res=>{ setTimeout(()=>{ res('22222222222') },time) }) },
外层有async console.log(1111111111) await this.sleep(2000).then(res=>{ console.log(res) }) console.log(3333333333)
5.五次执行有成功返回成功,五次失败返回失败
test(){ return new Promise((resolve,reject)=>{ let errorTime = 0 let randomNum = 0 let resultBool = false const logic = () =>{ console.log('***********') return new Promise((res)=>{ randomNum = Math.floor(Math.random()*5) if(randomNum < 4){ errorTime++ res(false) }else{ resultBool = true resolve(errorTime) } }) } while(!resultBool && errorTime < 5){ logic().then(innerRes=>{ resultBool = innerRes }) } if(!resultBool && errorTime === 5){ reject(`5次失败-----${randomNum}`) } }) },
this.test().then((res)=>{
console.log(`第${res+1}次是成功`,'@@@@@@@@@')
}).catch(err=>{
console.log(err,'#########')
})