promise初体验

简介: promise初体验
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <button id="button">按钮一下</button>
    <script>
        function rand(m, n) {
            return Math.ceil(Math.random() * (n - m + 1)) + m - 1;
        }
        const btn = document.querySelector("#button")
        btn.addEventListener('click', function () {
            const p = new Promise((resolve, reject) => {
                setTimeout(() => {
                    let n = rand(1, 100)
                    if (n < 30) {
                        resolve(n) //将promise对象的状态设置为成功
                    } else {
                        reject(n) //将promise对象的状态设置为失败
                    }
                }, 1000)
            })
            p.then((value) => {
                alert("成功了");
            }, (reason) => {
                alert("失败了");
            })
        })
        //resolve表示
    </script>
</body>
</html>

在这里的resolve(n)表示将正确的原因传给resolve,函数获得回调值n。同时将错误的原因传给reject(),函数获得回调值n,并且使用回调,将值传给p.then()的成功的,将错误的值传给p.then()的错误的

相关文章
|
7月前
|
前端开发
【学习笔记】Promise
【学习笔记】Promise
42 0
|
前端开发
前端学习笔记202306学习笔记第四十二天-为什么需要promise之1
前端学习笔记202306学习笔记第四十二天-为什么需要promise之1
44 0
|
7月前
|
前端开发 JavaScript
JavaScript开发中ES6+新特性:如何使用Promise来处理异步操作?
JavaScript开发中ES6+新特性:如何使用Promise来处理异步操作?
54 1
|
前端开发 JavaScript API
promise看这一篇就够了
promise看这一篇就够了
140 2
|
前端开发 JavaScript
解密异步操作终极利器:使用async/await获取Promise结果!
在开发中,我们经常需要处理异步操作,而Promise成为了处理异步的常用方式。然而,使用`.then`方法时,我们有时无法直接通过赋值方式或返回值获取所需的结果。本文将揭示一个解决方案,通过使用async/await语法,可以在`.then`方法中正确地返回我们需要的值
135 0
|
前端开发
前端学习笔记202306学习笔记第四十二天-为什么需要promise之2
前端学习笔记202306学习笔记第四十二天-为什么需要promise之2
47 0
|
前端开发
Promise是什么?怎么用?
Promise 是一种异步编程的解决方案。它可以使异步操作更加清晰、简单、优雅,避免了回调地狱的问题。Promise 对象表示一个异步操作的最终完成或失败,并且它的最终状态(完成或失败)和返回值(或错误)不依赖于调用它的代码。
|
前端开发
前端学习案例12-promise&race&all之2
前端学习案例12-promise&race&all之2
66 0
前端学习案例12-promise&race&all之2
|
前端开发
前端学习案例11-promise&race&all之1
前端学习案例11-promise&race&all之1
54 0
前端学习案例11-promise&race&all之1
|
前端开发
前端学习案例9-promise-aysnc,await之5
前端学习案例9-promise-aysnc,await之5
75 0
前端学习案例9-promise-aysnc,await之5

热门文章

最新文章