應聘Web前端開發工程師,面試官的題目:1、請為Array實作一個簡要的timeOutEach方法,起作用為: 每隔一定的時間(如m秒鐘)輸出一個item項,如果這個Array有n個項,那timeOutEach方法就需要n*m長的時間才能夠執行完成(可以理解成處理并發問題而實作的一個佇列方法).
2、輸入一個區間[n,m],其中0<=n<=m<=100,若a,b,c均屬于區間[n,m],請盡可能多的找出區間[n,m]中滿足條件: a2+b2=c2的a,b,c的取值。
求解!!!


uj5u.com熱心網友回復:
最近看了一點兒vue-router的原始碼,里面觸發佇列鉤子函式的時候,用到了類似的寫法,可以參考一下:
var arr = ['liu',2,'456']
function itor(item,cb){
new Promise((resolve,reject)=>{
setTimeout(()=>{
console.log('item',item);
resolve()
},2000)
}).then(cb)
}
function runQueue(arr,itor,cb){
var step = index => {
if(index>=arr.length){
cb()
} else {
itor(arr[index],()=>{
step(index+1)
})
}
}
step(0)
}
runQueue(arr,itor,()=>{console.log('結束了')})
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/67182.html
標籤:HTML(CSS)
