인프런 커뮤니티 질문&답변

컴공과님의 프로필 이미지
컴공과

작성한 질문수

함수형 프로그래밍과 JavaScript ES6+

화살표 함수내 외부 변수 저장 관련 문의 드립니다.

작성

·

166

0

화살표 함수내 화살표 함수에서 외부에 선언된 변수의 값이 중간의 화살표 함수내에서는

정상적으로 배열로 리턴되는데 중간 화살표 함수를 벗어나서 로그를 남기면 배열로 남지 않습니다.

 

import Excel from 'exceljs'

const ReadExcelSheet = async excelFile => {

const wb = new Excel.Workbook()

const reader = new FileReader()

 

let excelDataList = []

reader.readAsArrayBuffer(excelFile)

reader.onload = () => {

const buffer = reader.result

wb.xlsx.load(buffer).then(workbook => {

const sheet = workbook.getWorksheet(1)

 

let row_num = 13

sheet.eachRow((row, rowIndex) => {

let resultData = {}

resultData.title = row.getCell(3).text

excelDataList.push(resultData)

})

                      console.log(excelDataList) // 여기서는 정상적으로 배열로 응답됨.

              })

}

 console.log(excelDataList) // 여기서는 배열로 응답되지 않음.

return excelDataList

}

아무리 해도 원인을 찾지 못해 문의를 드립니다.

 

감사합니다.

답변 2

0

컴공과님의 프로필 이미지
컴공과
질문자

바쁘신데 답변 주셔서 감사합니다.

 

0

유인동님의 프로필 이미지
유인동
지식공유자

Promise 에 대해서 잘 생각해보시면 알아내실 수 있을거 같아요 :)

컴공과님의 프로필 이미지
컴공과

작성한 질문수

질문하기