【问题标题】:How to get all attributes of an object如何获取对象的所有属性
【发布时间】:2019-05-14 18:11:41
【问题描述】:

我需要获取一个类(或对象)的所有属性。还有所有未初始化的属性。

下面的代码只列出了属性“att2”,但我想要全部(att1,att2,att3):

class ObjA {
  att1: string;
  att2 = 'test';
  att3: number;
}

function getAttributes(obj: ObjA) {
  for (const item of Object.keys(obj)) {
    console.log('Attribute: ' + item);
  }
}

function mainTest() {
  const obj = new ObjA();
  getAttributes(obj);
}

【问题讨论】:

    标签: angular typescript


    【解决方案1】:

    你不能得到它们。

    TS 中的代码优化会从您的对象实例中移除未定义的值。

    只需将它们实例化为虚假值(字符串为'',数字为0),这样您的条件仍然得到尊重,您的函数应该可以工作。

    【讨论】:

      猜你喜欢
      • 2012-01-28
      • 1970-01-01
      • 1970-01-01
      • 2011-09-20
      • 2021-09-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多