温故知新(七五)Promise.resolve(obj) obj 有几种可能

Promise.resolve(obj) obj 有几种可能

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Promise.resolve 方法的参数分为四种情况


1.参数是一个 Promise 实例

如果参数是一个 Promise 实例,那么 Promise.resolve 将不做任何修改,原封不动的返回这个实例。


2.如果参数是一个 thenable 对象

thenable 对象值得是具有 then 方法 的对象,比如下面这个对象

let thenable = {
    then:function(resolve,reject){
        console.log('aaaa');
        resolve('hello');
    }
}


Promise.resolve 方法会将这个对象转为 Promise 对象,然后立即执行 thenable 对象的 then 方法。返回的 Promise 会“跟随”这个 thenable 对象,采用它的最终状态;

let thenable = {
    then:function(resolve,reject){
        console.log('aaaa');
        resolve('hello');
    }
}
let p = Promise.resolve(thenable);//aaa
p.then(res=>console.log(res));//hello

3.参数不是具有 then 方法的对象或根本不是对象


如果参数一个原始值,或者是一个不具有 then 方法的对象,那么 Promise.resolve 方法返回一个新的 Promise 对象,状态为 resolved。

let p = Promise.resolve('aaa');
p.then(res=>console.log(res));//aaa


4.不带任何参数

Promise.resolve 方法运行在调用时不带有任何参数,而直接返回一个 resolved 状态的 Promise 对象。

let p = Promise.resolve();
p.then(()=>{});

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
"人工智能导论 全部知识点思维导图整理.emmx"是一份非常值得收藏的文件。这份文件以思维导图的形式整理了人工智能导论的全部知识点,对于学习人工智能的初学者来说,这是一个非常方便且有效的学习工具。 首先,思维导图的形式使得知识点间的关联性一目了然。人工智能是一门涉及到多个领域的学科,知识点之间的联系错综复杂。通过思维导图,我们可以清晰地看到各个知识点之间的逻辑关系,更好地理解人工智能的整体框架。 其次,这个文件涵盖了人工智能导论的全部知识点。人工智能是一个庞大而复杂的领域,很难一下子掌握所有的知识点。这份思维导图整理了全部知识点,使得我们可以有一个全面的了解。通过学习这份导图,我们可以快速地掌握人工智能导论的核心概念和基本原理。 此外,思维导图的形式让我们可以更好地复习和回顾知识点。当我们需要温故知新时,可以通过浏览思维导图中的知识点,快速地回忆起相关的内容。思维导图中的关键词和分支结构,也可以帮助我们更好地组织和记忆知识。 总之,"人工智能导论 全部知识点思维导图整理.emmx"是一份非常有价值的学习资源。通过这份导图,我们可以清晰地了解人工智能导论的知识点之间的逻辑关系,快速地掌握核心概念和基本原理,并且可以更好地复习和回顾知识点。无论是初学者还是进阶学习者,都会从这份文件中受益匪浅。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值