promise 작성로직 수정하려고 하는데 잘 안됩니다. ㅠㅠ
283
플레어
작성한 질문수 17
0
강의 전체 수강했는데요. 강의로는 이해한듯 해도 실제 적용하려니 잘 안되네요. ㅠㅠ
아래와 같이 비동기 방식의 업무를 promise 이용해서 작성한 스크립트가 있습니다. 이걸 강의에서 배운대로 go() 안에 넣어서 간결하게 바꾸고 싶은데 잘 안되네요.
const save = function () {
dataArray = [0,1,2]; //비동기 함수인 getAsyncData 세번 수행하기 위한 배열.
runPromise = function(n) {
return new Promise(function(resolve, reject){
setTimeout(function() {
getAsyncData("DATA_AT="+n, function(val) {
DsList[n].data = val;
resolve(n+': resolve');
});
}, n * 300);
});
};
promiseAll = function() {
req = dataArray.map(function(el) {
return runPromise(el).then(function(result){
log(result);
});
});
Promise.all(req).then(function() {
//TODO : promise 전체 수행 완료. 이후 로직 수행
});
}
promiseAll();
}
위 스크립트를
go(dataArray,
map(..
.
..
...
)
이런식으로 어떻게 바꿀 수 있을까요?
답변 1
0
DsList 가 무엇을 하는 역할인지는 모르겠지만
아래와 같이 해볼 수 있습니다. 제 생각에는 더 많이 연습이 필요하시지 않을까 생각해요. :)
go(
dataArray,
map(n => new Promise(function(resolve, reject){
setTimeout(function() {
getAsyncData("DATA_AT="+n, function(val) {
DsList[n].data = val;
resolve(n+': resolve');
});
}, n * 300);
})),
)
프론트엔드 실무에서 어떤때에 쓰이는지 궁금합니다
1
121
1
함수형 프로그래밍 심화 강의 자료 추천
0
96
2
함수형 자바스크립트 프로그래밍 책
0
67
1
filter가 아무것도 걸러내지 못하는 경우
0
129
1
take 함수의 성능적면에서의 이점
1
484
1
pipe함수
1
536
1
Identity 함수
0
452
1
함수형 프로그래밍이란
0
839
1
reduce 예제 코드 제안!
0
405
1
fxts를 배워보려고 합니다.
1
537
1
flatMap 관련 질문드립니다~
1
448
1
다용성이 높은 L.flatMap
0
359
1
변수에 재 할당 금지~
0
542
1
DevTools라고 옆에 결과 확인하는거 어떻게 하나요?
0
486
2
소요시간에 관해서 질문드립니다
1
462
1
join에 대한 내용이 궁금증이 해결되지 않아서 질문드립니다!
0
467
2
reduce에 L.range를 사용할 때
0
529
2
[이해내용 공유] Lazy 에서 C.reduce가 병렬 효과를 내는 이유
3
744
2
제가 이해한 C.Reduce와 Reduce의 동작 차이 정리
2
798
3
go, pipe 함수 관련하여 질문 드립니다.
1
504
1
안녕하세요 강사님!
0
382
2
fxts에 go가 없는 이유?
0
846
1
비동기 관련 질문입니다!
0
464
1
질문 있습니다.
0
520
1





