# PromiseJS **Repository Path**: appcccc/PromiseJS ## Basic Information - **Project Name**: PromiseJS - **Description**: PromiseJS,js的promise实现,使高版本浏览器的Promise接口,兼容低版本浏览器下运行 - **Primary Language**: JavaScript - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 23 - **Forks**: 8 - **Created**: 2018-03-16 - **Last Updated**: 2026-04-29 ## Categories & Tags **Categories**: javascript-toolkits **Tags**: Promise ## README # PromiseJS ## 介绍 PromiseJS,js的promise实现,使高版本浏览器的Promise接口,兼容低版本浏览器下运行 #### 安装 ``` npm i silis-promisejs ``` #### 文件大小 |文件名|文件大小|文件说明| |--|--|--| |promise.min.js.zip|0.8k|js代码压缩 + zip压缩,用于网络要求更高的生产运营环境| |promise.min.js|1.47k|js代码压缩,用于生产运营时使用| |promise.js|3.2k|js源代码,用于开发测试时使用| #### 兼容浏览器 | | 浏览器 | 最小版本 | |-|-|-| | | Internet Explorer | 5.5 | | | Chrome | 1 | |  | Edge | 12 | |  | Firefox | 3 | |  | Opera | 15 | |  | Safari | 4 | #### promise resolve示例 ```
``` #### promise reject示例 ``` ``` #### Promise嵌套示例 ``` ``` #### Promise then result示例 > 演示第一个then的return结果,传到第二个then参数中 ``` ``` #### Promise reject not then示例 > 演示reject后,没有then情况下,是否可以抛出报错 ``` ``` #### then empty argument > 演示then传空参数 ``` ``` #### ES6 Promise Bug 在ES6原生Promise中,当Promise的resolve方法执行传入带有then方法的对象时,则Promise的then方法无法执行,示例: ``` new Promise(function(resolve){ resolve({ then:function(){ console.log("resolve then"); } //神奇的打印了"resolve then" }); }).then(function(result){ console.log("promise then"); //没有执行打印"promise then" }) ``` > 示例文件:https://gitee.com/silis/PromiseJS/blob/master/demo/resolve-then-bug.html