我有这个对象
diskMap = {
1: 'status-open',
2: 'status-closed',
3: 'status-read',
4: 'status-write',
};
如果我所拥有的只是一个ID,那么我怎么能回复说'status-closed'呢?
*在发布答案后编辑* 。这个问题比在这里发布的更复杂,我正在起草我的原始帖子,然后我自己想出了一个解决方案。不知怎的,在起草这个问题时我偶然发布了它,可以看出。这让我看起来有点愚蠢。我无法删除它,因为当我意识到我的错误时已经发布了答案。拥有管理员权限的人可以删除此帖子
答案 0 :(得分:2)
在javascript对象中,属性的名称(diskMap[2];
,针对您询问的状态)正是访问该值的方式:
var value = diskMap["2"];
或者:
使用属性的名称:
if(diskMap.hasOwnPropery(2)){
var value = diskMap[2];
}
但确保您的对象具有该属性通常是个好主意:
var diskMap = {
1: 'status-open',
2: 'status-closed',
3: 'status-read',
4: 'status-write',
};
console.log(diskMap[2]);
答案 1 :(得分:1)
你必须:
var diskMap = {
1: 'status-open',
2: 'status-closed',
3: 'status-read',
4: 'status-write',
};
var id = 2;
var status = diskMap[id];
console.log(status);
答案 2 :(得分:1)
您所要做的就是:
value
"status-closed"
的值为scan
答案 3 :(得分:1)
请参阅代码段
{{1}}
答案 4 :(得分:0)
您只需使用diskMap[ID]
:
const diskMap = {
1: 'status-open',
2: 'status-closed',
3: 'status-read',
4: 'status-write',
};
const ID = 2;
console.log(diskMap[ID]);