Deferred Class
Deferred对象
                    Defined in: 
            
            
                
                    Module: Promise
                
            
            
        input\code\st\deferred.js:15
                Constructor
Deferred
    Deferred
    
        ()
    
    
    
    
    
    
    
    
    
    
    Example:
            var defer = st.Deferred();
            function test(){
                setTimeout(function(){
                    defer.resolve("test");
                })
                return defer.promise();
            }
            st.when(test()).done(function(result){
                expect(result).toBe('test');
            })Methods
always
    always
    
        
            (
            
                - 
                    
                        callback
                    
                
)
    
    
    
    
    
    
    
    
    当递延对象是解决或拒绝时被调用添加处理程序;
Parameters:
| name | type | flag | description | 
|---|---|---|---|
| callback | Function | Array | 回调函数或者数组函数 | 
done
    done
    
        
            (
            
                - 
                    
                        callback
                    
                
)
    
    
    
    
    
    
    
    
    当延迟成功时调用一个函数或者数组函数。
Parameters:
| name | type | flag | description | 
|---|---|---|---|
| callback | Function | Array | 回调函数或者数组函数 | 
fail
    fail
    
        
            (
            
                - 
                    
                        callback
                    
                
)
    
    
    
    
    
    
    
    
    当延迟失败时调用一个函数或者数组函数。
Parameters:
| name | type | flag | description | 
|---|---|---|---|
| callback | Function | Array | 回调函数或者数组函数 | 
promise
    promise
    
        ()
    
    
    
    
    
    
    
    
    
    
    返回契约
reject
    reject
    
        
            (
            
                - 
                    
                        arg
                    
                
)
    
    
    
    
    
    
    
    
    拒绝延迟对象,并根据给定的参数调用任何失败的回调函数。
Parameters:
| name | type | flag | description | 
|---|---|---|---|
| arg | Object | 拒绝传递的参数 | 
Example:
            var defer = st.Deferred();
            function test(){
                setTimeout(function(){
                    defer.reject("test");
                })
                return defer.promise();
            }
            st.when(test()).fail(function(result){
                expect(result).toBe('test');
            })resolve
    resolve
    
        
            (
            
                - 
                    
                        result
                    
                
)
    
    
    
    
    
    
    
    
    解决递延对象,并根据给定的参数调用任何完成的回调函数
Parameters:
| name | type | flag | description | 
|---|---|---|---|
| result | Object | 解决传递的结果 | 
Example:
            function test(){
                var defer = st.Deferred();
                setTimeout(function(){
                    defer.resolve("test");
                })
                return defer.promise();
            }
            function test2(){
                var defer = st.Deferred();
                setTimeout(function(){
                    defer.resolve("test2");
                })
                return defer.promise();
            }
            st.when(test(),test2()).done(function(result,result2){
                expect(result).toBe('test');
                expect(result2).toBe('test2');
            })state
    state
    
        ()
    
    
    
    
    
    
    
    
    
    
    返回契约状态;
1. pending: 未完成状态。 
2. resolved: 解决状态。 
3. rejected: 拒绝的状态。then
    then
    
        
            (
            
                - 
                    
                        doneCallback
                    
                
- 
                    
                        callback
                    
                
- 
                    
                        priority
                    
                
)
    
    
    
    
    
    
    
    
    添加处理程序被调用时,递延对象得到解决或者拒绝;
Parameters:
| name | type | flag | description | 
|---|---|---|---|
| doneCallback | Function | 成功回调函数 | |
| callback | Function | 失败回调函数或者数组函数 | |
| priority | Number | 权重;优先级 | 
when
    when
    
        
            (
            
                - 
                    
                        result
                    
                
)
    
    
    
    
    
    
    
    
    捕获promise的方法,使用st.when调用;
Parameters:
| name | type | flag | description | 
|---|---|---|---|
| result | Object | Args | 单个判断对象或者一组(参数组)判断对象 |