(nodejs,javascript)如何使用变量在JSON文件中查找对象?

(nodejs,javascript)如何使用变量在JSON文件中查找对象?,javascript,json,node.js,Javascript,Json,Node.js,所以我有这个代码: var content = fs.readFileSync("timezones.json"); var body = JSON.parse(content) var user = user.whatever.id; console.log(user + "'s timezone: " + body.table.user.timezone); 我有一个JSON来记录某人的用户ID,然后是他们的时区 { "table": [ { "2217578578365

所以我有这个代码:

var content = fs.readFileSync("timezones.json");

var body = JSON.parse(content)

var user = user.whatever.id;

console.log(user + "'s timezone: " + body.table.user.timezone);
我有一个JSON来记录某人的用户ID,然后是他们的时区

{ "table": [
  {
    "221757857836564485": [
      {
        "timezone": "timezone1"
我想获取某人时区的方法是让
user
成为被选中者的ID,例如,如果用户ID为“12345”,我想查找

{ "table": [
  {
    "12345": [
      {
        "timezone": "timezone"

我只是想知道如何将ID实现到
body.table.user.timezone
,或者是否应该以不同的方式构造JSON文件?

您可以尝试通过以下方式重新构造JSON:

{“表格”:[ {“用户”:“12345”, “时区”:“时区1” },


依此类推。然后,您可以引用第一个用户作为body.table[0]。user和相应的时区作为body.table[0]。时区。“user”需要是要引用的键。

什么是
user=user.whatever.id
user
在此之前没有定义任何地方。您是否尝试过body.table[userId].timezone?你的数据结构让我很困惑。持有
表的对象中还有什么?在表内部和用户对象内部呢?类似
const table={'12345':{timezone:'some zone',…},}
的东西对我来说是有意义的。但我不明白。这比
const table={'12345':{时区:'tz1',…},…}
。这将使查找变得微不足道。