JSLint (con la bandiera OneVar acceso) è bandiera qualche codice javascript che ho con il seguente:Qual è il motivo dietro JSLint dicendo che ci sono "troppi dichiarazioni var"
Problem at line 5 character 15: Too many var statements.
Sono felice di correggere questi errori, ma mi piacerebbe sapere, lo sto facendo per le prestazioni o perché è solo una cattiva pratica e ha un potenziale maggiore per introdurre bug nel mio codice javascript. Qual è la ragione dietro la bandiera di onevar?
Ho dato un'occhiata ai documenti JSLint per il var keyword ma non parla specificamente del perché più istruzioni var nella stessa funzione sono cattive.
Ecco un tentativo di un esempio. Spiegare come il codice beneficerà solo avendo comunicato 1 var:
function Test(arg) {
var x = arg + 1,
y = cache.GetItem('xyz');
if (y !== null) {
// This is what would cause the warning in JSLint
var request = ajaxPost(/* Parameters here */);
}
}
Mostraci script! – alex