비동기 실행 방식에서 동기 실행 방식으로 변경해주기 위해서
async/await
이 필요한 것이다.
둘 다 동기 통신을 위해서 사용한다.
만익 await가 없다면 updateBoard
가 비동기 처리를 하는동안 기다려주지 않고 바로 다음 줄로 넘어가기 때문에 DB에 저장되기 전에 "수정이 완료되었습니다." 라고 뜬다.. 따라서 updateBoard를 동기처리를 해서 등록할 때까지 기다리도록 해주는 것이 await의 역할이다.
즉, await를 사용함으로써 비동기처리 함수인 updateBoard를 동기처리 함수로 바꿔주어 제대로 등록이 될 때까지 기다려주는 역할이다.
호이스팅이란 인터프리터가 변수와 함수의 메모리 공간을 선언 전에 미리 할당하는 것을 의미한다.
즉, 호이스팅은 변수의 선언
과 초기화
를 분리하여
선언만 코드의 최상단으로 끌어올려주는 것
이다. 따라서 변수를 정의하는 코드보다 사용하는 코드가 앞서 등장할 수 있다.
catName("철수")
function catName(name) {
console.log('고양이 이름은' + name + '입니다.')
}
// output : 고양이 이름은 철수 입니다.