promise resolve, reject
resolve then으로 받을수있다. reject catch로 받을수있다.
resolve, reject 후에 마지막으로 실행되는이 finally
callback지옥없이 then으로 순차적으로 할수있다.