【问题标题】:How to get id value dynamically in an object in typescript如何在打字稿中的对象中动态获取id值
【发布时间】:2020-11-12 03:53:50
【问题描述】:

我有一个关于如何在 typescript 的对象中动态获取 id 值的问题。我可以举个例子:

输入对象如下所示:


station = {
  id: "123123",
  address: {
    id: "asdfasd",
    type: "street"
    value: "asdfas"
  },
  station: {
    id: "asdsdfsdfasd",
    type: "trainstation"
    value: "asdfsdfsas"
  },
  information: {
    id: "asdsdfsdfasd",
    school: {
      id: "asdsdsdsfsdfasd",
      type: "middleschool"
      value: "asdfssdsddfsas"
    }
  }
}

如何动态获取父id,如果我给一个参数如“shool”,那么我可以得到信息的id?

任何解决方案

【问题讨论】:

    标签: json angularjs typescript


    【解决方案1】:

    这是您要找的吗:

    const station = {"id":"123123","address":{"id":"asdfasd","type":"street","value":"asdfas"},"station":{"id":"asdsdfsdfasd","type":"trainstation","value":"asdfsdfsas"},"information":{"id":"asdsdfsdfasd","school":{"id":"asdsdsdsfsdfasd","type":"middleschool","value":"asdfssdsddfsas"}}};
    
    
    function getId(obj, key){
    let id;
    Object.keys(obj, key).forEach(x=>{
    if(x == key){
     id = obj[x].id; return id;
    }
    else{
    if(typeof(obj[x]) == 'object'){ id = getId(obj[x], key)};
    }
    });
    return id;
    };
    
    console.log(getId(station, 'school'));

    【讨论】:

      猜你喜欢
      • 2019-12-02
      • 1970-01-01
      • 2022-01-12
      • 2018-11-25
      • 1970-01-01
      • 2020-12-01
      • 2020-12-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多