Ho una serie di codici di riferimento che i miei utenti finali creano durante il corso della giornata. Questi codici di riferimento corrispondono a un codice transazione memorizzato in un database. A partire da ora, ci sono 15 codici di transazione differenza.
Ecco un esempio:
Tranasction Code - Reference Code
BB01 - 48912388
C949 - X717-9999
e così via ...
Nuovi codici transazione possono essere aggiunti in qualsiasi momento. Se il codice della transazione è nuovo o no, tutti i codici di riferimento corrispondenti devono essere in un determinato formato. Pianifico di utilizzare espressioni regolari per convalidare i codici di riferimento utilizzando Javascript.
Ora ecco la domanda.
-
Sto meglio facendo qualcosa del genere
var transactionCode = $('input[name=TransactionCode]').val(); var referenceCode = $('input[name=ReferenceCode]').val(); // Do this type of test for all 15 types of reference codes until I // succeed if (transactionCode === 'BB01') { var results = /\d{8}/.test(referenceCode); // if results is true, blah blah blah }
-
Crea una tabella SQL di codici di riferimento e corrispondenti regex. Esegui una query sul database e costruisci un oggetto javascript (simile a un dizionario / hash di coppie di valori chiave) quando necessario, dove passo il codice di riferimento come chiave per recuperare la regex da convalidare con il mio codice di transazione.
Il secondo approccio sembra eccessivo per un piccolo set di dati. Ma il vantaggio è che non devo codificare i miei codici di transazione durante i test e quando vengono aggiunti o rimossi altri codici, non devo doverli manualmente in JavaScript. Dove come se fossi il primo approccio, devo codificare i miei codici di transazione. Non solo, ma se il codice della transazione dovesse mai cambiare, allora devo cambiare il javascript.
Volevo ottenere il feedback di qualcuno su questo approccio o un'altra alternativa se mi manca qualcosa.