js隐式全局变量造成的bug示例代码


Posted in Javascript onApril 22, 2014

一段js代码遇到一个bug,由于中间的隐式全局变量造成的,
由于代码较多,通过谷歌浏览器的js调试器才找到问题所在,
话说本人的电脑无论如何都装不上fiefox,从去年开始尝试了多次,均以失败告终,
不过谷歌的调试也挺好用的。
简化代码如下:

$(function(){ 
var pageNo = 2;//这个参数是变化的 
var pageSize = 10; 
test(); 
paginate(pageNo,pageSize);//由于 test() 方法覆盖pageNo,导致pageNo始终等于1 
}); 
function test(){ 
pageNo = 1;//全局变量,覆盖之前的pageNo ,相当于在js顶部写 var pageNo = 1 
//这里改为 var pageNo = 1;就可以了 
//do,,, 
} 
function paginate(pageNo,pageSize){ 
window.location.href = "user_list.action?pageNo="+pageNo+"&pageSize="+pageSize; 
}

在js中建议所有的变量均用var 声明,并且所有的变量都可以写到顶部,因为js没有块级作用域。
Javascript 相关文章推荐
JS 对输入框进行限制(常用的都有)
Jul 30 Javascript
火狐下input焦点无法重复获取问题的解决方法
Jun 16 Javascript
JavaScript实现MIPS乘法模拟的方法
Apr 17 Javascript
js实现固定显示区域内自动缩放图片的方法
Jul 18 Javascript
JavaScript获取页面中超链接数量的方法
Nov 09 Javascript
基于jquery实现智能提示控件intellSeach.js
Mar 17 Javascript
基于JavaScript实现弹幕特效
Aug 27 Javascript
vue2.0 和 animate.css的结合使用
Dec 12 Javascript
vue项目中使用ueditor的实例讲解
Mar 05 Javascript
vue计算属性和监听器实例解析
May 10 Javascript
详解从0开始搭建微信小程序(前后端)的全过程
Apr 15 Javascript
ES6知识点整理之函数对象参数默认值及其解构应用示例
Apr 17 Javascript
JavaScript实现的图像模糊算法代码分享
Apr 22 #Javascript
JavaScript闭包实例讲解
Apr 22 #Javascript
JavaScript函数的4种调用方法详解
Apr 22 #Javascript
JavaScript实现存储HTML字符串示例
Apr 21 #Javascript
JavaScript获取flash对象与网上的有所不同
Apr 21 #Javascript
js unicode 编码解析关于数据转换为中文的两种方法
Apr 21 #Javascript
jquery form 加载数据示例
Apr 21 #Javascript
You might like
简单实现限定phpmyadmin访问ip的方法
2013/03/05 PHP
thinkphp在模型中自动完成session赋值示例代码
2014/09/09 PHP
php构造函数与析构函数
2016/04/23 PHP
laravel框架实现后台登录、退出功能示例
2019/10/31 PHP
dojo 之基础篇(三)之向服务器发送数据
2007/03/24 Javascript
Extjs Ajax 乱码问题解决方案
2009/04/15 Javascript
javascript贪吃蛇完整版(源码)
2013/12/09 Javascript
jquery的总体架构分析及实现示例详解
2014/11/08 Javascript
深入理解JavaScript系列(22):S.O.L.I.D五大原则之依赖倒置原则DIP详解
2015/03/05 Javascript
跟我学习javascript的定时器
2015/11/19 Javascript
js获取图片宽高的方法
2015/11/25 Javascript
将form表单通过ajax实现无刷新提交的简单实例
2016/10/12 Javascript
AngularJS解决ng界面长表达式(ui-set)的方法分析
2016/11/07 Javascript
js与jquery分别实现tab标签页功能的方法
2016/11/18 Javascript
详解使用mpvue开发github小程序总结
2018/07/25 Javascript
浅谈React Event实现原理
2018/09/20 Javascript
微信小程序用户位置权限的获取方法(拒绝后提醒)
2018/11/15 Javascript
Node.js折腾记一:读指定文件夹,输出该文件夹的文件树详解
2019/04/20 Javascript
NodeJs 实现简单WebSocket即时通讯的示例代码
2019/08/05 NodeJs
vue实现抖音时间转盘
2019/09/08 Javascript
详解Python2.x中对Unicode编码的使用
2015/04/03 Python
python九九乘法表的实例
2017/09/26 Python
Tensorflow中使用tfrecord方式读取数据的方法
2018/06/19 Python
详解pandas删除缺失数据(pd.dropna()方法)
2019/06/25 Python
python 计算积分图和haar特征的实例代码
2019/11/20 Python
浅谈pytorch中的BN层的注意事项
2020/06/23 Python
python 用Matplotlib作图中有多个Y轴
2020/11/28 Python
图书馆志愿者活动总结
2014/06/27 职场文书
租房安全协议书
2014/08/20 职场文书
导游词之蓬莱长岛
2019/12/17 职场文书
详解CSS3.0(Cascading Style Sheet) 层叠级联样式表
2021/07/16 HTML / CSS
图文详解nginx日志切割的实现
2022/01/18 Servers
weblogic服务建立数据源连接测试更新mysql驱动包的问题及解决方法
2022/01/22 MySQL
javascript的var与let,const之间的区别详解
2022/02/18 Javascript
基于Python实现射击小游戏的制作
2022/04/06 Python
详解Android中的TimePickerView(时间选择器)的用法
2022/04/30 Java/Android