>  기사  >  웹 프론트엔드  >  ES6 Promise에 대한 간략한 소개

ES6 Promise에 대한 간략한 소개

一个新手
一个新手원래의
2017-09-21 09:24:241373검색

ES6에서는 콜백 지옥의 문제를 해결하기 위해 Promise가 출시되었습니다. Promise는 말 그대로 Promise를 의미합니다. Promise를 소개하는 많은 기사는 사람들을 첫눈에 어리둥절하게 만드는 종류입니다. 나 자신에 대해 이야기해보자. 약속이란 정확히 무엇인가? Promise는 객체입니다(많은 사람들이 '말도 안되는 소리를 하고 있습니까? js의 모든 것이 객체입니다'라고 말할 것입니다). . .
Promise는 객체 내부에서 호출되는 객체입니다. 이를 작성하는 가장 일반적인 방법은 다음과 같습니다.

function GetPromise(someting){
    let p = new Promise(resolve,reject)            //dosometing
            resolve(str);
            reject(str)
        }    return p
    }

이것은 Promise를 생성하고 사용하는 가장 일반적인 방법이며 호출 방법은

GetPromise(somgting).then(function(){}).catch(function(){})

입니다. 이때 많은 사람들이 저를 욕할 것입니다. 그러면 무엇이 잡히고, 결단은 어디서 오는지, 거부는 어디서 오는 것인지, 처음 접했을 때 이 문제에 대해 고민하고 있었습니다. 온라인으로 검색해도 아무도 제대로 말해주지 않더군요. 이제 가장 간단하게 설명하겠습니다. 그런 다음 성공 콜백이고 catch는 예외 콜백이므로 모두가 이해할 수 있습니다. 코드를 작성할 때 반드시 판단을 사용하게 됩니다. 예를 들어

    if(a=1){
        alert('我好帅啊‘)
    }else{
        alert('我怎么这么帅’)
    }

는 a를 판단하여 트리거할 문을 결정합니다. Promise는 바로 이 고급 작성 방법으로 내부적으로 제공되는 해결이 바인딩되어 있으며 거부가 발생합니다. Promise 객체를 인스턴스화할 때 어떤 콜백이 언제 트리거되어야 하는지 내부에서 결정합니다. 실제로 사용할 때 특정 콜백을 바인딩하고 포착합니다. 비동기 작업을 수행하기 위해 Promise를 사용할 때 모든 성공적인 콜백을 해결로 추상화하고 실패 콜백을 거부로 추상화합니다. 실제 호출에서는 then과 catch'를 통해 특정 콜백 함수를 바인딩하는데, 이는 물론 더 우아하고 추상적입니다. Promise에 메서드가 있지만 시작하는 방법만 요약하고 싶습니다. 아무리 복잡해도 설명하지 않겠습니다.

위 내용은 ES6 Promise에 대한 간략한 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.