Trí*_*han 0 javascript oop methods performance typescript
考虑到我有以下模块:
class Rectangle {
private width: number;
private height: number;
constructor(w: number, h: number) {
this.width = w;
this.height = h;
}
private area(): number {
return w * h;
}
public show(): void {
console.log(`${w} X ${h} = ${this.area()}`);
}
}
export default Rectangle;
Run Code Online (Sandbox Code Playgroud)
如您所见,该area
方法设置为private
,因此我可以将其移出类并将其转换为普通函数。因为我不导出它,无法从外部代码访问它。
const area = (w: number, h: number): number => w * h;
class Rectangle {
private width: number;
private height: number;
constructor(w: number, h: number) {
this.width = w;
this.height = h;
}
public show(): void {
console.log(`${w} X ${h} = ${area(this.width, this.height)}`);
}
}
export default Rectangle;
Run Code Online (Sandbox Code Playgroud)
如果我这样做,我每次new
在Rectangle
课堂上,area
将不会再次创建,所以我的Rectangle
目标会比它有一个更轻量级的private
方法。我对么?我应该这样做还是坚持原来的 OOP 方式?