json - 从 Firebase db 获取数据,返回时没有键值
问题描述
我正在使用 REST 调用从 Firebase 数据库中检索数据。所以我有一个看起来像这样的数据
user
{
123456:
{
Email: "test@hotmail.com",
Password: "John Doe"
}
654321:
{
Email: "test2@hotmail.com",
Password: "Jane Doe"
}
}
我使用的查询是
firebaseurl/user.json?orderBy="Email"&equalTo="test@hotmail.com"
如果我在没有检索键值的情况下进行查询,是否有可能123456
?因为每当我尝试使用数据时,例如console.log(user.Email)
,我都会变得不确定。但是当我这样做时,我console.log(user[123456].Email)
会得到我想要的结果。
我可以知道是否有办法做到这一点?或者一种无需 . 即可访问子元素的方法user[keyvalue]
。
解决方案
正如预期的那样,您只能使用一条记录作为回报:
const user = obj[Object.keys(rslt)[0]]
或者你可以遍历键
const usersArr = Object.keys(rslt).map(usr => {
... manipulate usr
return usr
})
推荐阅读
- windows - 笔记本电脑在 ubuntu 上收费,但在 windows 10 上不收费
- python - 如何使用python相对于matplotlib中的一行进行文本旋转?
- sql - 检查 Postgres jsonb 是否包含其中一个值
- debian - apt 仅升级我的存储库中的一些软件包
- azure - 在不同订阅中同步两个 Azure 存储帐户(尽可能接近实时)
- ios - iOS 13.x didRegisterForRemoteNotificationsWithDeviceToken 从未被调用
- c# - 如何在转换过程中实现具有嵌入式死区时间的 TransformBlock?
- android - 如何创建在应用程序关闭时也能正常工作的 Flutter 后台服务
- django - Django Queryset:连接两个查询集,其中一个作为列表或集合
- javascript - 从简单的光线投射渲染器中移除鱼眼效果