我有一个来自firebase的实时数据库,其中包含9386个数据集(但将来可能会更改)
这就是为什么我想知道上一个事件的“关键”是什么。
这就是我当前试图使其了解的方式:(使用npm模块qwest)
let order = "\u0022\u0024key\u0022";
let dbUrl = "https://example.firebaseio.com/users.json?limitToLast=1&orderBy=";
let end;
qwest.get(dbUrl + order)
.then(function(xhr, response) {
console.log(response);
end = response[9386]["username"];
console.log(end);
});
第一个问题:为什么我必须转义引号和美元符号?
第二个问题:我如何获取我要在json(limitToLast = 1)中检查的最后一项的“键”。
json响应如下:
{"9386":
{
"fromListA":"1",
"fromListB":"0",
"id":"9939",
"lastChecked":"2019-05-09 03:18:05",
"userid":"123456789",
"username":"username"
}
}
我想把v938bel中的“ 9386”拿出来。
答案 0 :(得分:1)
由于您选择使用"
来限制dbUrl
字符串,因此无法在该字符串的值中使用"
而不对其进行转义。定义字符串的一种更简单的方法是使用'
对其进行定界:
let dbUrl = 'https://example.firebaseio.com/users.json?limitToLast=1&orderBy="$key"';
要获取对象的键,请使用类似以下内容的
:Object.keys(response)[0]
var response = {"9386":
{
"fromListA":"1",
"fromListB":"0",
"id":"9939",
"lastChecked":"2019-05-09 03:18:05",
"userid":"123456789",
"username":"username"
}
}
console.log(Object.keys(response)[0]);