Saya menerima nomor type = 3dan harus memeriksa apakah ada di enum ini:
export const MESSAGE_TYPE = {
INFO: 1,
SUCCESS: 2,
WARNING: 3,
ERROR: 4,
};
Cara terbaik yang saya temukan adalah dengan mendapatkan semua Nilai Enum sebagai array dan menggunakan indexOf di atasnya. Tetapi kode yang dihasilkan tidak terlalu terbaca:
if( -1 < _.values( MESSAGE_TYPE ).indexOf( _.toInteger( type ) ) ) {
// do stuff ...
}
Apakah ada cara yang lebih sederhana untuk melakukan ini?
!!MESSAGE_TYPE[type]untuk memeriksa apakah ada nilai. MESSAGE_TYPE[type]akan kembali tidak terdefinisi jika nilai typetidak ada padaMESSAGE_TYPE
0, meskipun.
MESSAGE_TYPE[type] !== undefined
if(Object.values(MESSAGE_TYPE).includes(+type)? Tidak banyak yang bisa Anda lakukan.