JavaScript从对象中获取信息
JavaScript get info from object
我有一个JavaScript对象。我试着从rgInventory.(someid).classid
得到classid
,但总是得到undefined
。
My code (items is My object):
for (var i = 0; i < Object.keys(items.rgInventory).length; i++) {
console.log(items.rgInventory[i].classid);
}
您的i
不是键,而是该键的序列号。
把你的代码改成:
var keys = Object.keys(items.rgInventory);
for (var i = 0; i < keys.length; i++) {
console.log(items.rgInventory[keys[i]].classid);
}
注意,使用for...of
语法,它可以这样编码:
for (var key of Object.keys(items.rgInventory)) {
console.log(items.rgInventory[key].classid);
}
for...in
语法更适合遍历对象键:
for (var key in items.rgInventory) {
console.log(items.rgInventory[key].classid);
}
您还可以使用forEach
回调,使用第二个参数来设置this
:
Object.keys(items.rgInventory).forEach(function (key) {
console.log(this[key].classid);
}, items.rgInventory);
问题是您使用i
变量作为查找,而不是Object.keys(items.rgInventory)[i]
试试这个:
for (var i = 0; i < Object.keys(items.rgInventory).length; i++) {
console.log(items.rgInventory[Object.keys(items.rgInventory)[i]].classid);
}
但这可能不是你想要的查找方式…这是一个更简洁的代码:
Object.keys(items.rgInventory).forEach(function(key) {
console.log(items.rgInventory[key].classid)
})
相关文章:
- 从脚本中的动态(javascript)网页获取信息
- 在弹出窗口中获取信息
- 谷歌地图API-获取信息窗口打开时,点击一个圆圈
- 如何创建一个脚本,该脚本给定网站列表,它使用其搜索功能来获取信息
- 使用 JS 和 PHP 从数据库中获取信息
- 你如何从 iframe 获取信息?(JavaScript和/或Python)
- 当用户与谷歌地图交互时,如何从中获取信息
- Twitter引导模式-从iframe中获取信息并填充在主页上
- 在PhoneGap Build中从Facebook获取信息
- 使用Web服务根据对另一个下拉框的选择填充第二个下拉框以获取信息
- 从生成的子进程中获取信息的最佳方法
- 在调用方法来填充详细信息网格之前,如何从填充的下拉列表中获取信息
-
- 下拉菜单使用 Javascript 获取信息
- Javascript 从 id 获取信息
- 如何对调用服务器的 JavaScript 文件进行外部接口调用以获取信息
- 当互联网连接丢失时,如何从 Ajax 调用中获取信息
- 使用 jQuery 从不同域的 iframe 获取信息
- 从 JSON 对象的内部深度获取信息
- 如何从控制台获取信息
- 如何从其他网站获取信息