我有一个看起来像这样的对象:
var blu = {
obj_name: foo,
some_data: {
data1: {
bla1: -10,
bla2: 20,
bla3: 30
},
data2: {
blo1: -10,
blo2: -20,
blo3: 30
}
},
some_other_data: test
}
我的目标是在对象的some_data
部分中提取并操作每个正值,并在我的示例中提取对应于此值的值和键:
" bla2 for 10"
" bla3为30"
" blo3代表30"
不幸的是,我不确定如何获取与该值对应的键的字符串。我试过这个:
Object.keys(blu.some_data).forEach(k => {
Object.keys(blu.some_data[k]).forEach(p => {
if (blu.some_data[k][p] > 0) {
console.log(
`${Object.keys(blu.some_data[k][p])} for ${blu.some_data[k][p]}`
);
}
});
});
我正确地获得了正值但不是相应的键:
" 10"
" 30"
" 30"
如何打印对象的特定键?
答案 0 :(得分:1)
您的console.log行应该如下所示
console.log(`${p} for ${blu.some_data[k][p]}`);
您要打印的密钥名称是p。