zoukankan      html  css  js  c++  java
  • Promise 中的 then总结

    • Promise 中 then

      • promise的then中默认返回一个promise实例
      • 当then中没有return时返回的是undefined
      • 当then中return的对象或者基本类型等非new Promise实例时,对下一个进程then是同时执行的
            <!--同时执行111和222-->
            new Promise(()=>{})
            .then(val=>{
                console.log(111);
                return `string`;
            })
            .then(data=>{
                console.log(222);
                return data
            })
            .catch(err=>{
                console.error(err)
            })
        
      • 当then中return的是一个new Promise或者Promise.resolve()等实例时,对下一个进程then时队列顺序执行的
            <!--顺序执行 先111再222-->
            new Promise(()=>{})
            .then(val=>{
                console.log(111);
                return Promise.resolve(`string`);
            })
            .then(data=>{
                console.log(222);
                return data
            })
            .catch(err=>{
                console.error(err)
            })
        
      • 在node项目中,多少情况下都是以函数导出导入方式使用Promise【尤其是路由层和数据层】,此时一定要对函数return才有效
            <!--函数return-->
            <!--出 a.js-->
            const handerGetrouter = (reqObj)=>{
              ...
              return new Promise((resolve,reject)=>{
                  resolve(6666)
              })
              .then((val)=>{
                  return val;
              })
            }
            module.exports = {
                handerGetrouter
            }
            
            <!--入 b.js-->
            const {handerGetrouter}=require('a');
            ...
            handerGetrouter(reqObj)
            .then((data)=>{
                console.log(data);
                ....
            })
            .catch(err=>{
               console.error(err) 
            })
        
  • 相关阅读:
    truncate table
    SSIS学习笔记
    Bing Developer Assistant开发随记
    数组中的逆序对
    第一个只出现一次的字符
    丑数
    把数组排成最小的数
    连续子数组的最大和
    最小的k个数
    数组中出现次数超过一半的数字
  • 原文地址:https://www.cnblogs.com/yogic/p/13278949.html
Copyright © 2011-2022 走看看