【发布时间】:2016-07-07 08:01:58
【问题描述】:
当我在某个 REST 服务上设置匿名回调函数时,我得到一个非常奇怪的行为,如果我只是 console.log REST 服务的结果,我会得到预期的有效负载(对象数组) .但是,当我在同一个数组上运行一个循环并尝试获取某个键的值时,我收到一个错误,因为该项目显然是 undefined
...
callback: (result) => {
console.log(result); // outputs [{text: 'foo'}, {text: 'bar'}]
for(let item of result){
console.log(item.text); // error can't read text of undefined
console.log(item); // HOWEVER... this works... :/
}
}
有什么想法吗?一定是发生了某种异步行为,但我想不通。
谢谢!
【问题讨论】:
-
这不是打字稿错误,这只是 JavaScript
-
知道为什么会出现此错误吗?谢谢
-
Everything seems to work 符合预期。你确定
response真的和评论中的一样吗? -
使用 item['text'] 代替 item.text。它肯定可以工作......
-
这是您的实际代码还是您为问题简化了它?你用断点调试过吗?
标签: javascript arrays typescript angular