gpt4 book ai didi

typescript - 我想列出类/接口(interface)的所有公共(public)属性

转载 作者:搜寻专家 更新时间:2023-10-30 20:41:23 24 4
gpt4 key购买 nike

使用 TypeScript,我们可以定义类及其公共(public)属性。如何获取为类定义的所有公共(public)属性的列表。

class Car {
model: string;
}

let car:Car = new Car();
Object.keys(car) === [];

有没有办法让 Car 发出它的 model 属性?

最佳答案

就像 Aaron 已经在上面的评论中提到的那样,公共(public)和私有(private)成员在 Javascript 中看起来是一样的,所以不可能有区分它们的方法。例如,下面的 TypeScript 代码

class Car {
public model: string;
private brand: string;

public constructor(model:string , brand: string){
this.model = model;
this.brand = brand;
}
};

编译为:

var Car = (function () {
function Car(model, brand) {
this.model = model;
this.brand = brand;
}
return Car;
}());
;

如您所见,在编译后的 JavaScript 版本中,成员 modelbrand 完全没有区别,尽管其中一个是私有(private)的,另一个是私有(private)的一个是公开的。

您可以通过使用一些命名约定(例如,public_member__private_member)来区分私有(private)成员和公共(public)成员。

关于typescript - 我想列出类/接口(interface)的所有公共(public)属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36105098/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com