Estoy buscando crear una matriz asociativa en JS, pero uso las constantes definidas como parte de la clase como índices.Uso de constantes como índices para matrices asociativas de Javascript
La razón por la que deseo esto es para que los usuarios de la clase puedan usar las constantes (que definen eventos) para desencadenar acciones.
algo de código para ilustrar:
STATE_NORMAL = 0;
STATE_NEW_TASK_ADDED = 0;
this.curr_state = STATE_NEW_TASK_ADDED;
this.state_machine = {
/* Prototype:
STATE_NAME: {
EVENT_NAME: {
"next_state": new_state_name,
"action": func
}
}
*/
STATE_NEW_TASK_ADDED : { // I'd like this to be a constant
this.EVENT_NEW_TASK_ADDED_AJAX : {
"next_state": STATE_NEW_TASK_ADDED,
"action" : function() {console.log("new task added");},
}
}
}
// Public data members.
// These define the various events that can happen.
this.EVENT_NEW_TASK_ADDED_AJAX = 0;
this.EVENT_NEW_TASK_ADDED_AJAX = 1;
estoy teniendo problemas para conseguir que esto funcione. No soy muy bueno con JS, pero parece que no importa lo que haga, la matriz se define con cadenas y no con constantes. ¿Hay alguna forma de forzar a la matriz a usar las constantes?
Gracias!
Gracias! Me salvaste mucho tiempo. – Mihir
Ah, ES6 es tan genial –