【发布时间】:2014-02-10 16:56:40
【问题描述】:
所以我想要一个不可变的 Vector 类。为此,我需要一个用于 x 和 y 坐标的公共 getter 和一个私有 setter,以便我可以在构造函数中实际初始化这些值。
我有几个选项可供选择,所以我想知道哪一个符合惯例。
我可以这样做:
class Vector {
constructor(private _x: number, private _y: number) { }
public get x() {
return this._x;
}
public get y() {
return this._y;
}
}
但我不知道使用下划线是否是一种常见的做法。这可能是一个问题,因为该名称将在智能感知中可见。
第二个选项可能是
class Vector {
constructor(private x: number, private y: number) { }
public get X() {
return this.x;
}
public get Y() {
return this.y;
}
}
据我所知,JS 中只有类以大写字母开头,所以这也可能是个坏主意。
处理此问题的首选方法是什么?
【问题讨论】:
标签: javascript typescript