Faccio molta programmazione nella mia classe. È solo il mio primo semestre, e la maggior parte delle mie cose sono recensioni. Ho iniziato a utilizzare una funzione verifyInput per garantire che gli input dell'utente corrispondano a determinati criteri. Dal momento che finisco per utilizzare verifyInput così tanto, continuo a venire con più modi per migliorarlo ed espanderlo. Al momento, il mio codice ha un aspetto simile al seguente:
function verifyInput(foo, match, response = ": is not a valid input.") {
const input = foo()
if (!isNaN(input) && !input || input === null || input === undefined) {
if (input === null) {
return null;
}
else {
alert("Not valid.");
}
return verifyInput(foo, match, response);
}
else {
if (match && !match(input)) {
alert("(" + input + ")" + response);
return verifyInput(foo, match, response);
}
else {
return input;
}
}
}
userInput = verifyInput(() => prompt("Input?"), (x) => x > 10 ? true : false)
Funziona come un fascino. Spesso penso a nuove cose da aggiungere ad esso. Recentemente stavo considerando l'aggiunta di un parametro aggiuntivo per modificare la stringa di output. Forse voglio che l'utente sia in grado di inserire numeri come stringhe digitate invece di valori normali. Un utente può inserire "seven"
e convalida e restituisce 7.
Dopo un po 'di riflessione mi sono reso conto che potevo usare la mia funzione match sia come validatore che come modificatore di output. Tuttavia faccio questo genere di cose molto quando lavoro su vecchie e nuove funzioni. Ero curioso di sapere che tipo di linee guida e di altre tecniche usano per gestire le loro funzioni e parametri. Inoltre, come li organizzi?