巧用apply让javascript函数仅执行一次

简介:

RT,有时候我们只想要让某些脚步函数执行一次就算完成任务了。如何实现这种功能呢?简单模仿下面这段就可以轻松搞定了:

代码

调用形式:

复制代码

function  showMsg(arg){
   alert(arg);
}

var  fn = obj.triggerOnce(showMsg);
fn(
1 ); // 只执行一次
fn( 2 ); // 没有调用fn
复制代码

 最后,关于javascript的apply方法,您可以简单参考这篇旧文。

 
外一篇】用javascript取得querystring的值
在常见的网站中,经常碰到有“XXXX.aspx?username=jeffwong&address=北京” 这种形式的url,通过asp.net的Request对象获取键值轻而易举,通过js也不是很难,用下面的函数就可以搞定了:

代码
测试函数如下:
代码

需要说明的是,url里的参数通常都会有编码,本文采用的是比较常用的unescape进行解码,实际上,关于url参数编码,通常有escape,encodeURIComponent和encodeURI这三种编码函数,escape是window对象的内置函数,而另外两种则是javascript内置函数,它们解码的函数也是一一对应的关系(您可以参考这一篇),各自对应的反转函数分别是unescape,decodeURIComponent和decodeURI。





本文转自JeffWong博客园博客,原文链接:http://www.cnblogs.com/jeffwongishandsome/archive/2010/06/15/1671585.html,如需转载请自行联系原作者


目录
相关文章
|
17天前
|
JavaScript
js【详解】call()、apply()、bind()方法
js【详解】call()、apply()、bind()方法
24 6
|
17天前
|
JavaScript
js export 对外输出常量、变量和函数
js export 对外输出常量、变量和函数
18 5
|
16天前
|
JavaScript
js函数封装 —— 金额添加千分位分隔符
js函数封装 —— 金额添加千分位分隔符
16 2
|
16天前
|
JavaScript 前端开发 网络架构
JavaScript编码之路【对象的增强、ES6新特性之函数的默认值设置 、rest参数 (剩余参数)、拓展运算符、对象与数组的解构赋值】
JavaScript编码之路【对象的增强、ES6新特性之函数的默认值设置 、rest参数 (剩余参数)、拓展运算符、对象与数组的解构赋值】
20 1
|
22天前
|
JavaScript 前端开发
JavaScript作用域关乎变量和函数的可见范围。
【6月更文挑战第27天】JavaScript作用域关乎变量和函数的可见范围。全局作用域适用于整个脚本,局部作用域限于函数内部,而ES6引入的`let`和`const`实现了块级作用域。全局变量易引发冲突和内存占用,局部作用域在函数执行后消失,块级作用域提高了变量管理的灵活性。作用域关键在于组织代码和管理变量生命周期。
21 1
|
13天前
|
JavaScript
js 延时执行代码的最佳实践 —— 自定义 sleep 函数
js 延时执行代码的最佳实践 —— 自定义 sleep 函数
12 0
|
13天前
|
JavaScript
js【详解】bind()、call()、apply()( 含手写 bind,手写 call,手写 apply )
js【详解】bind()、call()、apply()( 含手写 bind,手写 call,手写 apply )
10 0
|
14天前
|
JavaScript
js 高频实用函数封装汇总(持续更新)
js 高频实用函数封装汇总(持续更新)
12 0
|
15天前
|
JavaScript
js 数组移除指定元素【函数封装】(含对象数组移除指定元素)
js 数组移除指定元素【函数封装】(含对象数组移除指定元素)
13 0
|
15天前
|
JavaScript
js 调试 —— 断点(含进入函数、条件断点等)
js 调试 —— 断点(含进入函数、条件断点等)
17 0