ES5 で Classを定義する WebModule 流のイディオム。メリットは2つ
- getter, setter をダイレクトに記述できる
- ファーストビューを見るだけで I/F を把握できる
function Class() {
this._someValue = null; // Any
...
}
Class.prototype = Object.create(Class, {
constructor: { value: Class },
method: { value: Class_method },
someValue: {
set: function(v) { this._someValue = v; },
get: function() { return this._someValue; } },
});
function Class_method() {
...
}
このエントリに置けるファーストビューとは「スクロールせずに見渡せる範囲」という意味です。
できるだけパッと見える場所に、必要な情報が揃っているほうが嬉しいに決まっています。
見る人の環境にも依存しますが、スクロールしまくらないと I/F も把握できない状態は避けたいですね。