Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

js promise用法

作者:迎着风飛行こ   发布日期:2026-01-22   浏览:48

// 创建一个 Promise 对象
const myPromise = new Promise((resolve, reject) => {
    // 模拟异步操作,例如网络请求或文件读取
    setTimeout(() => {
        const success = true; // 假设操作成功
        if (success) {
            resolve("操作成功"); // 成功时调用 resolve
        } else {
            reject("操作失败"); // 失败时调用 reject
        }
    }, 1000);
});

// 使用 then 方法处理 Promise 的成功和失败情况
myPromise
    .then(result => {
        console.log(result); // 输出: 操作成功
    })
    .catch(error => {
        console.error(error); // 如果有错误会输出: 操作失败
    });

// 链式调用多个 then 方法
const anotherPromise = new Promise((resolve, reject) => {
    setTimeout(() => {
        resolve(10);
    }, 500);
});

anotherPromise
    .then(value => {
        console.log(value); // 输出: 10
        return value * 2;
    })
    .then(newVal => {
        console.log(newVal); // 输出: 20
    })
    .catch(error => {
        console.error(error);
    });

解释说明:

  1. 创建 Promise:通过 new Promise 创建一个新的 Promise 对象,并传入一个执行器函数 (resolve, reject)。执行器函数会在 Promise 创建时立即执行。
  2. resolve 和 reject:当异步操作成功时调用 resolve,传递成功的值;当异步操作失败时调用 reject,传递错误信息。
  3. then 和 catch:使用 .then() 方法处理 Promise 成功的结果,使用 .catch() 方法处理 Promise 失败的情况。
  4. 链式调用:可以链式调用多个 .then() 方法,每个 .then() 方法可以返回一个新的 Promise 或者直接返回一个值。

希望这个示例能帮助你理解 JavaScript 中 Promise 的基本用法。

上一篇:nodejs promise

下一篇:js use strict

大家都在看

js 数组对象排序

js 对象数组排序

js 数组删掉第一个值

js fill

js 数组连接

js json数组

js 数组复制

js 复制数组

js 数组拷贝

js 数组对象合并

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站