Maison >interface Web >js tutoriel >Exemple de code de bug causé par les compétences variables_javascript globales implicites de js

Exemple de code de bug causé par les compétences variables_javascript globales implicites de js

WBOY
WBOYoriginal
2016-05-16 16:51:381416parcourir

Un morceau de code js a rencontré un bug causé par la variable globale implicite au milieu
En raison de la grande quantité de code, j'ai trouvé le problème via le débogueur js de Google Chrome
Au fait. , mon ordinateur est équipé de Je ne peux pas utiliser fiefox. J'ai essayé plusieurs fois depuis l'année dernière mais tous ont échoué
Mais le débogage de Google est également très utile.
Le code simplifié est le suivant :

Copiez le code Le code est le suivant :

$(function() {
var pageNo = 2;//Ce paramètre change
var pageSize = 10;
test();
paginate(pageNo,pageSize);//Parce que le La méthode test() remplace pageNo , ce qui fait que pageNo est toujours égal à 1
});
function test(){
pageNo = 1;//Variable globale, écrasant le pageNo précédent, équivalent à l'écriture de var pageNo = 1 en haut de js
//Changez ici pour var pageNo = 1; c'est tout
//do,,,
}
function paginate(pageNo,pageSize){
window.location.href = "user_list.action ?pageNo=" pageNo "&pageSize=" pageSize;
}

En js, il est recommandé que toutes les variables soient déclarées avec var, et toutes les variables peuvent être écrites en haut, car js n'a pas de portée au niveau des blocs.
Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn