论坛类网站搭建,wordpress 收费查看,网站运营主管是干什么的,苏州高端网站设计建设RT,有时候我们只想要让某些脚步函数执行一次就算完成任务了。如何实现这种功能呢#xff1f;简单模仿下面这段就可以轻松搞定了#xff1a; 代码 varobj newObject();obj.triggerOnce function(fn) { //控制让函数只触发一次returnfunction() { try{ fn.ap…RT,有时候我们只想要让某些脚步函数执行一次就算完成任务了。如何实现这种功能呢简单模仿下面这段就可以轻松搞定了 代码 var obj new Object();obj.triggerOnce function(fn) { //控制让函数只触发一次 return function() { try { fn.apply(this, arguments); } catch (e) { var txt There was an error on this page.\n\n; txt Error message: e.message \n\n; txt Error name: e.name \n\n; //alert(txt);//正式平台上可能需要注释掉该行 } finally { fn null; } }} 调用形式 function showMsg(arg){ alert(arg);}var fnobj.triggerOnce(showMsg);fn(1);//只执行一次fn(2);//没有调用fn 最后关于javascript的apply方法您可以简单参考这篇旧文。 【外一篇】用javascript取得querystring的值在常见的网站中经常碰到有“XXXX.aspx?usernamejeffwongaddress北京” 这种形式的url通过asp.net的Request对象获取键值轻而易举通过js也不是很难用下面的函数就可以搞定了 代码 var urlStrs location.search; //QueryStringvar Request {};Request.Count 0;Request.Add function(name, value) { if (Request.hasOwnProperty(name) false) { Request.Count; //如果不存在计数添加1 } Request[name] value; return true;}Request.QueryString function(name) {//取对应的键值 var key name.toString().toLocaleLowerCase(); //不区分大小写 var result null; try { // if (Request.hasOwnProperty(key)) { result Request[key]; // } } catch (e) { //alert(e.message); } return result;}Request.Init function(urlQueryString) { if (urlQueryString.indexOf(?) ! -1) { var url urlQueryString.substr(1) var strArr url.split(); for (var i 0; i strArr.length; i) { var strChildArr strArr[i].split(); var name String(strChildArr[0]).toLowerCase(); var value unescape(strChildArr[1]); //unescape解码 this.Add(name, value); //添加 } }}测试函数如下代码 //测试函数function test() { Request.Init(urlStrs); //初始化request alert(Request.Count); var name username; var value Request.QueryString(name); alert(Request[name]); alert(Request.QueryString(name)); name address alert(Request[name]); alert(Request.QueryString(name)); name age; alert(Request[name]); alert(Request.QueryString(name));} 需要说明的是url里的参数通常都会有编码本文采用的是比较常用的unescape进行解码实际上关于url参数编码通常有escape,encodeURIComponent和encodeURI这三种编码函数escape是window对象的内置函数而另外两种则是javascript内置函数它们解码的函数也是一一对应的关系您可以参考这一篇各自对应的反转函数分别是unescapedecodeURIComponent和decodeURI。转载于:https://www.cnblogs.com/jeffwongishandsome/archive/2010/06/15/1671585.html