[英]How to retrieve the key from an array of values of a JSON object?
让有一个对象的值作为数组。 例如,
const obj = {
'abc': ['xyz','tuv'],
'def': ['qrs']
}
我们如何从对象中获取 'tuv' 的密钥?
这与this question不同,其中值不是数组。 如何通过值获取 JavaScript 对象中的键?
您可以通过检查值来获取键和过滤器。
const getKeys = (object, value) => Object.keys(object).filter(k => object[k].includes(value)), obj = { abc: ['xyz','tuv'], def: ['qrs'] }; console.log(getKeys(obj, 'tuv'));
我假设一个值不会有多个键。
const getKeyByValue = (object, value) => Object.keys(object)
.map(key => object[key].map(val => { if (val === value) { return key }}))
.flat().filter(key => key)[0] || false
所以,如果我们想得到 'tuv' 的密钥,我们可以这样调用这个方法,
getKeyByValue(obj, 'tuv')
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.