多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
在写js脚本时,经常会用到一些拼写函数的情况,例如调用setTimeout ~~~ var msgalert="test"; function TestAlert(msg) { alert(msg) } $(document).ready(function () { $("#btnCancel").click(function (e) { setTimeout("TestAlert("+msgalert+")",1000); }); }) ~~~ 查了很长时间,为什么就是弹不出对话框呢。检查了很长时间才发现,原来是少了一对单引号 ~~~ $(document).ready(function () { $("#btnCancel").click(function (e) { setTimeout("TestAlert('"+msgalert+"')",1000); }); }) ~~~ 这样的写法容易出错,还不容易检查出错误,如果使用闭包就可完全避免,改写如下 ~~~ 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) }); }) ~~~ 由于使用了闭包,也简单了很多,检查错误也很容易了