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 相关文章推荐
jQuery 表单验证扩展代码(一)
Oct 11 Javascript
JavaScript高级程序设计 读书笔记之十 本地对象Date日期
Feb 27 Javascript
Java 正则表达式学习总结和一些小例子
Sep 13 Javascript
jquery实现简单易懂的图片展示小例子
Nov 21 Javascript
jquery动态更换设置背景图的方法
Mar 25 Javascript
JavaScript访问CSS属性的几种方式介绍
Jul 21 Javascript
jQuery插件animateSlide制作多点滑动幻灯片
Jun 11 Javascript
原生js实现模拟滚动条
Jun 15 Javascript
jQuery鼠标经过方形图片切换成圆边效果代码分享
Aug 20 Javascript
JS实现页面打印(整体、局部)
Aug 18 Javascript
OpenLayers实现图层切换控件
Sep 25 Javascript
一篇文章告诉你如何实现Vue前端分页和后端分页
Feb 18 Vue.js
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
使用 MySQL 开始 PHP 会话
2006/12/21 PHP
初步介绍PHP扩展开发经验分享
2012/09/06 PHP
PHP实现变色验证码实例
2014/01/06 PHP
php中通用的excel导出方法实例
2017/12/30 PHP
Thinkphp 框架扩展之Widget扩展实现方法分析
2020/04/23 PHP
PHP代码覆盖率统计详解
2020/07/22 PHP
PHP高并发和大流量解决方案整理
2021/03/09 PHP
javascript 单选框,多选框美化代码
2008/08/01 Javascript
Jquery Ajax的Get方式时需要注意URL地方
2011/04/07 Javascript
js模拟滚动条(横向竖向)
2013/02/22 Javascript
JavaScript实现网页图片等比例缩放实现代码及调用方式
2013/02/25 Javascript
JS常用正则表达式总结
2013/11/12 Javascript
javascript学习笔记_浅谈基础语法,类型,变量
2016/09/19 Javascript
React Native 集成jpush-react-native的示例代码
2017/08/16 Javascript
提升页面加载速度的插件InstantClick
2017/09/12 Javascript
利用express启动一个server服务的方法
2017/09/17 Javascript
详解VUE项目中安装和使用vant组件
2019/04/28 Javascript
[01:04:20]完美世界DOTA2联赛PWL S2 LBZS vs Forest 第一场 11.29
2020/12/02 DOTA
通过源码分析Python中的切片赋值
2017/05/08 Python
Python实现字典的遍历与排序功能示例
2017/12/23 Python
python入门:这篇文章带你直接学会python
2018/09/14 Python
对python:循环定义多个变量的实例详解
2019/01/20 Python
Python实现读取txt文件中的数据并绘制出图形操作示例
2019/02/26 Python
python查询文件夹下excel的sheet名代码实例
2019/04/02 Python
python操作小程序云数据库实现简单的增删改查功能
2019/06/06 Python
tensorflow tf.train.batch之数据批量读取方式
2020/01/20 Python
关于Tensorflow使用CPU报错的解决方式
2020/02/05 Python
tensorflow之并行读入数据详解
2020/02/05 Python
关于CSS Tooltips(鼠标经过时显示)的效果
2013/04/10 HTML / CSS
HTML5 canvas基本绘图之绘制曲线
2016/06/27 HTML / CSS
丝绸和人造花卉、植物和树木:Nearly Natural
2018/11/28 全球购物
澳大利亚网上书店:QBD
2021/01/09 全球购物
专科应届毕业生求职信
2014/06/04 职场文书
单位消防安全责任书
2014/07/23 职场文书
供应商食品安全承诺书
2015/04/29 职场文书
Mybatis-plus配置分页插件返回统一结果集
2022/06/21 Java/Android