Berikut beberapa hal yang dapat Anda lakukan:
Ekspor a const
dari modul . Tergantung pada kasus penggunaan Anda, Anda bisa saja:
export const constant1 = 33;
Dan impor itu dari modul jika perlu. Atau, membangun ide metode statis Anda, Anda dapat mendeklarasikan static
aksesor get :
const constant1 = 33,
constant2 = 2;
class Example {
static get constant1() {
return constant1;
}
static get constant2() {
return constant2;
}
}
Dengan begitu, Anda tidak perlu tanda kurung:
const one = Example.constant1;
Contoh Babel REPL
Kemudian, seperti yang Anda katakan, karena a class
hanya gula sintaksis untuk suatu fungsi, Anda bisa menambahkan properti yang tidak bisa ditulisi seperti:
class Example {
}
Object.defineProperty(Example, 'constant1', {
value: 33,
writable : false,
enumerable : true,
configurable : false
});
Example.constant1; // 33
Example.constant1 = 15; // TypeError
Mungkin menyenangkan jika kita bisa melakukan sesuatu seperti:
class Example {
static const constant1 = 33;
}
Tetapi sayangnya sintaksis properti kelas ini hanya ada dalam proposal ES7, dan meskipun demikian itu tidak akan memperbolehkan untuk menambahkan const
ke properti.