vue中三点运算符与map一同使用导致输出结果不一致的问题

let t = new Array(3);
      let s = [...t].map((item) => {
        console.log(item);
        return {
          visionNo: null,
        };
      });
      console.log(s, "s");

当前这段代码在浏览器中输出为:

但在vue项目中输出为:

相同的代码不同的输出结果,目前没找到原因,后续找到原因后会更新 

更新:目前猜测是babel的问题,在es6转换为 es5的时候babel解析出现问题,将解构的顺序放在了empty数组执行map的后面,依据是经实操,发现react项目中也会出现当前的bug,但我这边未证实这个猜测,后续有空会专门debug一下,大家在碰见这种情景的时候尽量使用如下方式吧,尽量避免编译后的错误

let t = [...new Array(3)]; // 替换成这样输出就为正常了
      let s = t.map((item) => { // 替换成这样输出就为正常了
        console.log(item);
        return {
          visionNo: null,
        };
      });
      console.log(s,"s");

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值