비동기적인 상황에서 작업의 순서를 정해야할때 사용함 이벤트루프를 기반으로 함 js의 비동기 처리를 위한 것 pending, fulfilled, rejected의 세가지 상태중 하나를 가짐!! pending 에서 비동기처리 작업이 완료되면~ 1) fulfilled 로 전환돼서 결과값을 반환하거나 2) 오류 발생시 rejected 상태로 전환돼서 오류정보를 반환함 성공시(fulfilled 상태) then()을 실행하고 실패시(rejected 상태) catch()를 실행함. 또한 then()을 여러개 가질 수 있는데 위에서부터 순서대로 각 then()이 완료되면 그 다음 then()이 실행됨. 작업 순서의 가독성이 좋아짐!!~~ *promise.all()을 쓰면 promise.all()안에 있는 then()이..