1.我需要做一个用户会话列表,先拿到了一个会话列表,由于列表里面没有用户头像,所以我在拿到列表数据之后,遍历数据(items),异步获取到用户信息(serviceInfo)之后把他赋值给当前的item,我在打印会话列表数据的时候可以看到用户信息,但是在实际使用的时候却发现没有这个属性,问题就是,为什么没法使用属性?
2.
上面一行的打印结果,(这里有个问题,同样是对象,为什么在控制台的表现不一样,一个是Object,一个是{})
下面一行的打印结果
拿到消息列表后,遍历列表,获取对应的用户信息
获取到用户信息后赋值
3.我用for in遍历的时候,发现也是没有这个属性,说明这个属性根本没有添加成功,刚开始感觉可能是对象拷贝的问题,因为用户信息是一个对象,但是后来改变了赋值方法,发现一样
问题描述
问题出现的环境背景及自己尝试过哪些方法
相关代码
// 请把代码文本粘贴到下方(请勿用图片代替代码)
首先是关于
console.dir(object)
和console.dir(value)
的区别:前者会打印
object
此时内存中的状态:输出结果:
如果想看到一个对象在某一时刻的全部属性的值,只有通过
debugger
。然后,从你的第二张截图来看,赋值是成功了的,可能是你
for in
的时机不对,比如,在异步完成前就开始for in
。