Typescript中公共类访问修饰符的用途是什么?Typescript中公共类访问修饰符的用途是什么?
是什么
export class Thing {
public doStuff(){}
}
和
export class Thing {
doStuff(){}
}
看来,标准TSC JS输出是完全一样的区别...
Typescript中公共类访问修饰符的用途是什么?Typescript中公共类访问修饰符的用途是什么?
是什么
export class Thing {
public doStuff(){}
}
和
export class Thing {
doStuff(){}
}
看来,标准TSC JS输出是完全一样的区别...
您的示例代码在TypeScript中的含义完全相同。如果您未在成员定义中加入修饰符public
,private
或protected
,则TypeScript将选择默认的public
。
这对Javascript没有意义,因为TypeScript编译器会生成完全相同的代码。但是,这些修改器会帮你封装类成员,并让他们:
public
private
在类protected
再次生成的JavaScript不包含修饰符。这意味着,如果有人获得您的Javascript代码,即使您将其定义为private
,它也将访问成员。修饰符仅在TypeScript中有用,并帮助开发人员不访问某些类成员。
显式指定** public **修饰符是否很好? –
它只是设定一个明确的方式该方法是public
。默认情况下,TypeScript中的所有类方法/属性都是public类型的,但为了清晰起见,您还可以在代码中注明这一点。
您可以在Handbook阅读更多关于它,这里是摘录:
公共默认
在我们的例子中,我们已经能够自由地访问我们整个声明的成员我们的计划。如果您熟悉其他语言的课程,您可能在上面的例子中已经注意到我们不必使用public这个词来实现这一点;例如,C#要求将每个成员明确标记为公开以便可见。在TypeScript中,每个成员默认都是公共的。
您仍可以明确地标记成员公众。
如果您未指定访问修饰符,则默认为公共。编译后的外观是无关紧要的。你应该知道使用private或protected也会产生完全相同的JavaScript。 – Hampus