巧妙小思想
var showBoxNum = 0;
function hhh() {
.......
if (nMS <= 0){
if (1 != showBoxNum){
// 这是个弹窗!类似alert弹窗
showBox('提示','活动结束,感谢参与!竞价结果将另行通知!','alert');
}
showBoxNum++;
......
}
hhh() 一开始就被调用了2次,以后可能还要调n次,未知。一开始调用2次是没有什么问题的,但是showBox()弹窗2次就是不合理的,要求只弹出一次。
这样,我要一开始调用2次showBox(),就显示一次,而且不能影响以后hhh()函数的调用,尤其这些就不是你写的,你只是来改bug的。
这个功能的业务逻辑又多,代码又多,哪里都不敢轻改。所以我就想了个巧妙的办法:给showBox()被调用的次数编个号,showBoxNum = 0,1,2,3,4,5.... n-1,n。
我限制编号 showBoxNum == 1,不可以弹窗,其他的都可以,这样就达到了目标,而且还不影响原来的逻辑,个人认为是个不错的办法。代价就是一个全局变量,几次++,划得来。