# PromiseJS **Repository Path**: silis/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**: 2022-07-11 ## Categories & Tags **Categories**: javascript-toolkits **Tags**: Promise ## README # PromiseJS ## 介绍 PromiseJS,js的promise实现,使高版本浏览器的Promise接口,兼容低版本浏览器下运行 #### 安装 ``` npm i silis-promisejs ``` #### 文件大小 |文件名|文件大小|文件说明| |--|--|--| |viewx.min.js.zip|0.8k|js代码压缩 + zip压缩,用于网络要求更高的生产运营环境| |viewx.min.js|1.47k|js代码压缩,用于生产运营时使用| |viewx.js|3.2k|js源代码,用于开发测试时使用| #### 兼容浏览器 | 电脑端 | 浏览器 | 最小版本 | |-|-|-| | | Internet Explorer | 5.5 | | | Chrome | 1 | |  | Edge | 12 | |  | Firefox | 3 | |  | Opera | 15 | |  | Safari | 4 | | 手机端 | 浏览器 | 最小版本 | |-|-|-| |  | WebView Android | 1 | |  | Chrome Android | 18 | |  | Firefox Android | 4 | |  | Opera Android | 14 | |  | iOS Safari | 3.2 | |  | Samsung Internet | 1.0 | #### 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