收藏
回答

一个类似数组的数据对象如何转换为数组使用?

我执行如下代码后,产生如下数据对象:

1、先在app.js里编写了一个Promise函数:

2、再在其它页面里调用上述Promise函数来获取异步结果值,把数值添加到一个自定义的空数组里var msg=[]:

最后那一句:console.log(msg, typeof msg) 打印的结果如下(但这个[ ]展开是有数据,如下图):

我的问题如下图:

上述这个数据对象的数据不能通过for in或forEach等方法打印出,更不能通过msg[0]的方式获取到,请问,能如何把数据正常获取出来或打印出来?谢谢·!产生上述数据对象结果的类似片段代码:https://developers.weixin.qq.com/s/qU4lWyml73f5

最后一次编辑于  2020-03-02
回答关注问题邀请回答
收藏

2 个回答

  • Mr.Zhao
    Mr.Zhao
    2020-03-02

    2020-03-02
    有用 1
    回复 13
    • 大洪
      大洪
      2020-03-02
      关键目前我获取的那个数据对象a“[ ]”不知如何把数据逐一取出来?因为展开后,可以看到数据0:1,1:1....,用a[0]这样的方式是没数据的
      2020-03-02
      回复
    • Mr.Zhao
      Mr.Zhao
      2020-03-02回复大洪
      for in 循环
      2020-03-02
      1
      回复
    • 大洪
      大洪
      2020-03-02回复Mr.Zhao
      我试过了,没有任何数据打印出来:
      for (let index in a) {
            console.log(index, a[index]);
       };


      打印结果:空白
      2020-03-02
      回复
    • Mr.Zhao
      Mr.Zhao
      2020-03-02回复大洪
      估计还存在异步赋值问题,你把所有代码都亮出来吧
      2020-03-02
      回复
    • 大洪
      大洪
      2020-03-02回复Mr.Zhao
      我整理了一下代码,如下图,先在app.js编写这个getMsg(id)的Promise函数,再在其它页面里调用这个函数使用而获取异步结果数值:
      2020-03-02
      回复
    查看更多(8)
  • 青团社
    青团社
    2020-03-03

    我想说 msg push msg 能不能换不一样的参数名?

    2020-03-03
    有用
    回复 3
    • 大洪
      大洪
      2020-03-03
      可以,这个function(msg)里面的msg你自己定义,可以改为function(res)也是同样意思
      2020-03-03
      回复
    • 青团社
      青团社
      2020-03-04回复大洪
      你这样不会被搞混么?msg外部定义 这里也定义。然后还在它里面用msg push msg。。。第一次看
      2020-03-04
      回复
    • 大洪
      大洪
      2020-03-04回复青团社
      概念清晰是不会的搞混的,实际应用里建议还是写不同
      2020-03-04
      回复
登录 后发表内容
问题标签