我有JSON结构,如下所示
var myJson = {
"Number of Devices":2,
"Block Devices":{
"bdev0":{
"Backend_Device_Path":"/dev/ram1",
"Capacity":"16777216",
"Bytes_Written":9848,
"timestamp":"4365093970",
"IO_Operations":87204,
"Guest_Device_Name":"vdb",
"Bytes_Read":107619,
"Guest_IP_Address":"192.168.26.88"
},
"bdev1":{
"Backend_Device_Path":"/dev/ram2",
"Capacity":"16777216",
"Bytes_Written":10062,
"timestamp":"9365093970",
"IO_Operations":93789,
"Guest_Device_Name":"vdb",
"Bytes_Read":116524,
"Guest_IP_Address":"192.168.26.100"
}
}
}我想选择块设备,即bdev0,bdev1.另外,它们的值--通常,这很容易在vanilla中使用Object.keys --但是我似乎不能在角上使用这个函数,所以我尝试了angular.forEach,但是它返回未定义的值。
这是我能走多远
function getData(){
$http.get(path)
.success(function(data){
$scope.devices = data
angular.forEach($scope.devices, function(item){
console.log(item['Block Devices']);
})
})
}发布于 2016-02-10 12:22:11
如下面的代码片段所示,使用forEach访问所需的属性:
angular.forEach($scope.devices['Block Devices'], function(value, key) {
console.log(value, key);
// Would log value of $scope.devices['Block Devices'][key]
// and key name which is 'bdev0', 'bdev1' etc.
})这样,您就可以在回调函数中访问bdev0、bdev1作为值和设备名称为key的值。
发布于 2016-02-10 12:26:30
角是一个javascript框架。任何在中工作的东西都会在这里起作用。关于你的问题:你应该像这样迭代:
angular.forEach($scope.devices['Block Devices'], function(value, key){
console.log(key);
})这将安慰bdev0,bdev1等。
https://stackoverflow.com/questions/35315116
复制相似问题