首页 > 解决方案 > React JS useState 获取值为 true 的键

问题描述

这里的简单问题。如何在值为 true 的状态下找到键?例如。可以说我将此设置为状态:

const [page, setPage] = useState({
        1: false,
        2: false,
        3: false,
        4: true,
        5: false,
        6: false,
        7: false
    });

如何返回值为 true 的键?在这种情况下 4?

我还想返回键/值对的长度(7),甚至可以循环键/值对,但这并不像我的主要问题那么重要。

希望你能帮忙。谢谢。

标签: javascriptobjectjavascript-objects

解决方案


您可以使用迭代对象

  • Object.keys(myObject)这将返回所有键。
  • Object.values(myObject)这将返回所有值。
  • Object.entries(myObject)这将返回所有键和值。

应该是这样的:

for (const [key, value] of Object.entries(page)) {
  if (value) {
     console.log(key);
  }
}

推荐阅读