Reputation: 6929
Is it in JavaScript allowed to use an Enum to define another Enum?
var VESSEL_DOCUMENT_SUB_TYPE = {
// PLAN_TYPE : {
//
// },
/** @enum {Number} */
CERTIFICATE_TYPE : {
BUNKER_OIL_POLLUTION_DAMAGE : CERTIFICATE_TYPE.BUNKER_OIL_POLLUTION_DAMAGE,
P_I_COE : CERTIFICATE_TYPE.P_I_COE,
H_M_SINGLE_COVER_NOTE : CERTIFICATE_TYPE.H_M_SINGLE_COVER_NOTE
}/*,
OTHER : {
}*/
};
var CERTIFICATE_TYPE = {
/** Bunker Oil Pollution Damage */
BUNKER_OIL_POLLUTION_DAMAGE : 0,
/** P&I (COE) */
P_I_COE : 1,
/** H&M Single Cover Note */
H_M_SINGLE_COVER_NOTE : 2
};
Upvotes: 1
Views: 78
Reputation: 6929
Yes, it is allowed. The only problem is, that I get a runtime error, because CERTIFICATE_TYPE
should be defined before VESSEL_DOCUMENT_SUB_TYPE
var CERTIFICATE_TYPE = {
/** Bunker Oil Pollution Damage */
BUNKER_OIL_POLLUTION_DAMAGE : 0,
/** P&I (COE) */
P_I_COE : 1,
/** H&M Single Cover Note */
H_M_SINGLE_COVER_NOTE : 2
};
var VESSEL_DOCUMENT_SUB_TYPE = {
// PLAN_TYPE : {
//
// },
/** @enum {Number} */
CERTIFICATE_TYPE : {
BUNKER_OIL_POLLUTION_DAMAGE : CERTIFICATE_TYPE.BUNKER_OIL_POLLUTION_DAMAGE,
P_I_COE : CERTIFICATE_TYPE.P_I_COE,
H_M_SINGLE_COVER_NOTE : CERTIFICATE_TYPE.H_M_SINGLE_COVER_NOTE
}/*,
OTHER : {
}*/
};
Upvotes: 2