我有一个带有布尔值的JS对象,如下所示
var obj = {
key_1: false,
key_2: true,
key_3: false
}
我知道只有一个值可以是真的。是否有相同的库方法,因为我找不到任何。
我尝试使用_.indexOf
,但似乎无效
答案 0 :(得分:2)
如果您知道只有一个true
值,则可以find()
使用Object.keys()
返回该值的关键字。
var obj = {
key_1: false,
key_2: true,
key_3: false
}
var key = Object.keys(obj).find(e => obj[e] == true);
console.log(key)

答案 1 :(得分:0)
其他解决方案不会超出它自己的范围。使它更纯粹"纯粹"
(少浏览器支持)
var obj = {
key_1: false,
key_2: true,
key_3: false
}
var key = Object.entries(obj).find(a => a[1])[0]
console.log(key)