Baseline Widely available
Promise
ìì±ìë ì£¼ë¡ íë¡ë¯¸ì¤ë¥¼ ì§ìíì§ ìë í¨ì를 ê°ì ë ì¬ì©í©ëë¤.
const promise1 = new Promise((resolve, reject) => {
setTimeout(() => {
resolve("foo");
}, 300);
});
promise1.then((value) => {
console.log(value);
// Expected output: "foo"
});
console.log(promise1);
// Expected output: [object Promise]
구문 매ê°ë³ì
executor
resolve
ë° reject
ì¸ì를 ì ë¬í ì¤í í¨ì. ì¤í í¨ìë íë¡ë¯¸ì¤ 구íì ìí´ resolve
ì reject
í¨ì를 ë°ì ì¦ì ì¤íë©ëë¤(ì¤í í¨ìë Promise
ìì±ìê° ìì±í ê°ì²´ë¥¼ ë°íí기ë ì ì í¸ì¶ë©ëë¤). resolve
ë° reject
í¨ìë í¸ì¶í ë ê°ê° íë¡ë¯¸ì¤ë¥¼ ì´ííê±°ë ê±°ë¶í©ëë¤. ì¤í í¨ìë ë³´íµ ì´ë¤ ë¹ë기 ìì
ì ììí í 모ë ìì
ì ëë´ë©´ resolve
를 í¸ì¶í´ íë¡ë¯¸ì¤ë¥¼ ì´ííê³ , ì¤ë¥ê° ë°ìí ê²½ì° reject
를 í¸ì¶í´ ê±°ë¶í©ëë¤. ì¤í í¨ììì ì¤ë¥ë¥¼ ëì§ë©´ íë¡ë¯¸ì¤ë ê±°ë¶ë©ëë¤. ì¤í í¨ìì ë°íê°ì 무ìë©ëë¤.
Promise
ê°ì²´ë new
í¤ìëì ìì±ì를 ì¬ì©í´ ë§ëëë¤. ìì±ìë 매ê°ë³ìë¡ "ì¤í í¨ì"를 ë°ìµëë¤. ì´ í¨ìë ë§¤ê° ë³ìë¡ ë ê°ì§ í¨ì를 ë°ìì¼ íëë°, 첫 ë²ì§¸ í¨ì(resolve
)ë ë¹ë기 ìì
ì ì±ê³µì ì¼ë¡ ìë£í´ 결과를 ê°ì¼ë¡ ë°íí ë í¸ì¶í´ì¼ íê³ , ë ë²ì§¸ í¨ì(reject
)ë ìì
ì´ ì¤í¨íì¬ ì¤ë¥ì ìì¸ì ë°íí ë í¸ì¶íë©´ ë©ëë¤. ë ë²ì§¸ í¨ìë ì£¼ë¡ ì¤ë¥ ê°ì²´ë¥¼ ë°ìµëë¤.
const myFirstPromise = new Promise((resolve, reject) => {
// do something asynchronous which eventually calls either:
//
// resolve(someValue) // fulfilled
// or
// reject("failure reason") // rejected
});
í¨ìì íë¡ë¯¸ì¤ 기ë¥ì ì¶ê°íë ¤ë©´, ê°ë¨íê² íë¡ë¯¸ì¤ë¥¼ ë°ííëë¡ íë©´ ë©ëë¤.
function myAsyncFunction(url) {
return new Promise((resolve, reject) => {
const xhr = new XMLHttpRequest();
xhr.open("GET", url);
xhr.onload = () => resolve(xhr.responseText);
xhr.onerror = () => reject(xhr.statusText);
xhr.send();
});
}
ëª
ì¸ ë¸ë¼ì°ì í¸íì± ê°ì´ 보기
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4