gpt4 book ai didi

javascript - 测试嵌套对象中的所有叶属性是否为 true

转载 作者:行者123 更新时间:2023-11-28 17:52:42 25 4
gpt4 key购买 nike

有没有一种方法(无需手动编写递归函数)来测试对象中的所有叶属性是否为true

obj = { a: true, b: { c: true } }

如果它是一个数组,我可以_.flattenDeep(obj).values().every(_.identity),但它是一个对象。

对象中只有 bool 叶属性。

最佳答案

我认为这是不可能的。如果展平一个对象,您将覆盖重复的键,这将使整个操作变得毫无意义。一个非常简单的递归函数可以检查它

function allTrue(obj) {
return Object.values(obj)
.every(v => v instanceof Object ? allTrue(v) : v === true)
}

let obj = {
a: true,
b: {
c: true
}
};
console.log(allTrue(obj));

关于javascript - 测试嵌套对象中的所有叶属性是否为 true,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45130907/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com