行囊电子商务 2021-10-27 16:46 采纳率: 78.1%
浏览 57
已结题

js里()().then()是什么写法

              (async ()=>{
                const arr = []
                for (let item of res.tempFilePaths) {
                  // 依次上传
                  const src = await upload(item)
                  arr.push(src)
                }
                return arr
              })().then(res => {
                wx.hideLoading()
                resolve(res)
              })

这段代码是不是promise的简写?第一次见()().then();
有没有相关写法资料

  • 写回答

2条回答 默认 最新

  • 在下月亮有何贵干 前端领域优质创作者 2021-10-27 16:58
    关注

    分开说,()()是直接调用函数的意思的意思,可以不用声明函数名称直接调用,
    你这里调用的就是()=>{...}
    然后由于这个箭头函数

    ( async ()=>{...} )()
    

    然后就是.then了,涉及到promise,只有前面的返回结果是promise时才可以进行.then下一步回调
    但是为什么这里没有出现promise还可以使用.then呢
    因为异步async函数返回值会被自动转化为promise
    也就是arr会变成promise返回

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 11月4日
  • 已采纳回答 10月27日
  • 创建了问题 10月27日

悬赏问题

  • ¥15 spss统计中二分类变量和有序变量的相关性分析可以用kendall相关分析吗?
  • ¥15 拟通过pc下指令到安卓系统,如果追求响应速度,尽可能无延迟,是不是用安卓模拟器会优于实体的安卓手机?如果是,可以快多少毫秒?
  • ¥20 神经网络Sequential name=sequential, built=False
  • ¥16 Qphython 用xlrd读取excel报错
  • ¥15 单片机学习顺序问题!!
  • ¥15 ikuai客户端多拨vpn,重启总是有个别重拨不上
  • ¥20 关于#anlogic#sdram#的问题,如何解决?(关键词-performance)
  • ¥15 相敏解调 matlab
  • ¥15 求lingo代码和思路
  • ¥15 公交车和无人机协同运输