我在ionic3中有一个项目,其中我有Firebase数组,如下所示。
List = {User3: true, User8: true, User9: false}
参数名称不固定,可以更改。因此,当我以上述格式接收数组时,我只需要列出真实的用户。我需要一个如下数组。
User = {User3, User8,}
如何在for循环中列出参数名称。
for(let item of List){
//I need to write item.User3 in order to retrive the value. But parameter name User3 is not fixed.
}
答案 0 :(得分:1)
您的List
不是"数组"。它是对象。它没有"参数名称"。它具有属性。要获取值为true
的属性(用户),请使用Object.keys
过滤对象的属性,对于值为true
的属性。你可以用
Object.keys(List).filter(user => List[user])
您无法使用for...of
。对于数组而言,这不是对象。
您还可以仅查询值为true的节点,您可以通过查阅Firebase文档了解如何操作。
小点,但大写变量名称是混乱和非标准的。通常大写的标识符用于类等。