已知有一个对象,通过对象的值拿到对象的键

已知有一个对象,通过对象的值拿到对象的键函数返回一个数组 包含所有与目标值相匹配的键

大家好,欢迎来到IT知识分享网。

使用 Object.keys() 函数结合遍历来实现

const myObject = { name: 'Kimi', age: 30, country: 'Moon', species: 'AI' }; function getKeyByValue(obj, targetValue) { for (const key of Object.keys(obj)) { if (obj[key] === targetValue) { return key; } } return null; // 如果没有找到,返回 null } const valueToFind = 'Moon'; const key = getKeyByValue(myObject, valueToFind); console.log(key); // 输出:country

在这个示例中,getKeyByValue 函数接受两个参数:一个对象 obj 和一个目标值 targetValue。函数遍历对象的键,并检查每个键对应的值是否等于目标值。如果找到匹配的值,函数返回对应的键。

如果你的对象中可能有多个键对应同一个值,你可以修改函数来返回所有匹配的键:

const myObject = { name: 'Kimi', nickname: 'Kimi', age: 30, country: 'Moon' }; function getKeysByValue(obj, targetValue) { const keys = []; for (const key of Object.keys(obj)) { if (obj[key] === targetValue) { keys.push(key); } } return keys; // 返回一个包含所有匹配键的数组 } const valueToFind = 'Kimi'; const keys = getKeysByValue(myObject, valueToFind); console.log(keys); // 输出:["name", "nickname"]

在这个示例中,getKeysByValue 函数返回一个数组,包含所有与目标值相匹配的键。这样,如果对象中有多个相同的值,你就能获取到所有对应的键。 

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/147438.html

(0)
上一篇 2025-04-07 17:26
下一篇 2025-04-07 17:45

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信