# Promise-APlus **Repository Path**: mxyNichol/promise-aplus ## Basic Information - **Project Name**: Promise-APlus - **Description**: 参考Promises/A+标准,手写一个Promise,并通过它的测试集 Promises/A+标准:https://promisesaplus.com/ 测试集:https://github.com/promises-aplus/promises-tests - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2022-05-08 - **Last Updated**: 2022-05-08 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Promise-APlus 如果对你有帮助,可以给一个start嘛?谢谢! ## 介绍 参考Promises/A+标准,手写一个Promise,并通过它的测试集 Promises/A+标准:https://promisesaplus.com/ 测试集:https://github.com/promises-aplus/promises-tests ## 代码 详情见`LittlePromise.js` 日后会继续完善解析和备注的 ## 测试集使用方式 可以去仓库看一下详细的介绍,推荐一种便捷的做法: 1. 导入测试集的包 `npm i promises-aplus-tests -g` 2. 在`LittlePromise.js`文件中加上接口 ```js LittlePromise.defer = LittlePromise.deferred = function () { let adaptor = {} adaptor.promise = new Promise((resolve,reject)=>{ adaptor.resolve = resolve; adaptor.reject = reject; }); return adaptor; } module.exports = LittlePromise; ``` 3. 在`LittlePromise.js`同级路径下,进行命令行操作 `promises-aplus-tests LittlePromise.js` ## 测试结果 测试集设计的很精妙,可以根据一个个测试结果去探究Promise的设计原理 ![image-20220508102521963](./lib/1.png) 看到一个个测试用例唰唰唰被跑通的快乐!