47 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
		
		
			
		
	
	
			47 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
|   | --- | |||
|  | title: Promise Resolve | |||
|  | localeTitle: 承诺解决 | |||
|  | --- | |||
|  | ## 承诺解决
 | |||
|  | 
 | |||
|  | ### 描述
 | |||
|  | 
 | |||
|  | `Promise.resolve`函数表示Promise的成功完成。此函数允许您将Promise返回给调用函数。 | |||
|  | 
 | |||
|  | `Promise.resolve`接受一个参数返回调用函数。此参数可以是值,也可以是其他Promise。 | |||
|  | 
 | |||
|  | resolve函数的“值”可以是基本的JavaScript类型,数组或对象。 | |||
|  | 
 | |||
|  | ```javascript | |||
|  | Promise.resolve('success'); // string  | |||
|  |  Promise.resolve([2, 3, 5]); // array  | |||
|  |  Promise.resolve({name: 'John', age: '43'}); // object  | |||
|  | ``` | |||
|  | 
 | |||
|  | “thenable”是一个将两个回调函数作为参数的函数。您可以使用第一个参数触发成功完成,第二个参数返回Promise上的错误。 | |||
|  | 
 | |||
|  | ```javascript | |||
|  | thenableFunction = {then: function(onSuccesss, onFailure) {  | |||
|  |     if (condition === 'success') {  | |||
|  |       onSuccess(paramList); // success condition  | |||
|  |     } else {  | |||
|  |       onFailure(paramList); // error condition  | |||
|  |     }  | |||
|  |   }  | |||
|  |  }  | |||
|  |   | |||
|  |  Promise.resolve(thenableFunction);  | |||
|  | ``` | |||
|  | 
 | |||
|  | 将then函数链接到promise调用者将使您可以访问`Promise.resolve`的结果。 | |||
|  | 
 | |||
|  | ```javascript | |||
|  | promiseCallingFunction(paramList)  | |||
|  |   .then(function(value) {  | |||
|  |     /*  | |||
|  |      * this is where you get access to the value  | |||
|  |      * returned by a promise on successful completion  | |||
|  |      */  | |||
|  |   });  | |||
|  | 
 | |||
|  | ``` |