源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

使用闭包对setTimeout进行简单封装避免出错

  • 时间:2021-10-17 03:29 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:使用闭包对setTimeout进行简单封装避免出错
在写js脚本时,经常会用到一些拼写函数的情况,例如调用setTimeout
[u]复制代码[/u] 代码如下:
var msgalert="test"; function TestAlert(msg) { alert(msg) } $(document).ready(function () { $("#btnCancel").click(function (e) { setTimeout("TestAlert("+msgalert+")",1000); }); })
查了很长时间,为什么就是弹不出对话框呢。检查了很长时间才发现,原来是少了一对单引号
[u]复制代码[/u] 代码如下:
$(document).ready(function () { $("#btnCancel").click(function (e) { setTimeout("TestAlert('"+msgalert+"')",1000); }); })
这样的写法容易出错,还不容易检查出错误,如果使用闭包就可完全避免,改写如下
[u]复制代码[/u] 代码如下:
var msgalert="test"; function dalayAlert(msg ,time){ setTimeout( TestAlert(msg), time ); } function TestAlert(msg) { alert(msg) } $(document).ready(function () { $("#btnCancel").click(function (e) { dalayAlert(msgalert,1000) }); })
由于使用了闭包,也简单了很多,检查错误也很容易了
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部