js类中获取外部函数名的方法与代码


Posted in Javascript onSeptember 12, 2007

比如我们要在一个类中设定一个方法可以根据调入一个方法保存在类变量中,等需要的时候可以通过访问类变量来得到。
通常如果我们生成一个实例
如:var temp=new TopnetTree();
如果我们通过设定属性的方式来传入一个方法,会发现传入的是一个函数的内容,而非函数名。
如temp.fileAction=fnTest; //fnTest是一个函数

于是偶就写了一个方法来实现此功能。
通过arguments来判断判断传入内容:
实现如下功能:
传入内容为空,不执行任何内容
传入一个参数,则表示是一个无参数的函数
传入多个参数,则表示第一个参数位函数名,后面的为各个参数。

 1 TopnetTree.prototype.setFileAction=function(){  
 2     var fnName,fnArgs="";  
 3     if(arguments.length==0){  
 4         return 0;  
 5     }else if(arguments.length==1){  
 6         fnName=arguments[0];  
 7     }else{  
 8         fnName=arguments[0];  
 9         for(var i=1;i<arguments.length;i++){  
10             fnArgs+=","+arguments[i];  
11         }  
12         fnArgs=fnArgs.replace(",","");  
13     }  
14           
15     this.fileAction=fnName+"("+fnArgs+")";  
16 }
Javascript 相关文章推荐
js自带函数备忘 数组
Dec 29 Javascript
js 目录列举函数
Nov 06 Javascript
捕获关闭窗口的脚本
Jan 10 Javascript
extjs DataReader、JsonReader、XmlReader的构造方法
Nov 07 Javascript
js通过googleAIP翻译PHP系统的语言配置的实现代码
Oct 17 Javascript
使用js如何实现全选与全不选
Dec 30 Javascript
jquery自定义右键菜单、全选、不连续选择
Mar 01 Javascript
微信小程序如何像vue一样在动态绑定类名
Apr 17 Javascript
Angular模版驱动表单的使用总结
May 05 Javascript
JavaScript工具库之Lodash详解
Jun 15 Javascript
小程序实现长按保存图片的方法
Dec 31 Javascript
JS原型对象操作实例分析
Jun 06 Javascript
javascript下过滤数组重复值的代码
Sep 10 #Javascript
“不能执行已释放的Script代码”错误的原因及解决办法
Sep 09 #Javascript
超强的IE背景图片闪烁(抖动)的解决办法
Sep 09 #Javascript
IE不出现Flash激活框的小发现的js实现方法
Sep 07 #Javascript
用javascript实现画板的代码
Sep 05 #Javascript
js中的escape及unescape函数的php实现代码
Sep 04 #Javascript
一个符号插入器 中用到的js代码
Sep 04 #Javascript
You might like
PHP 文件扩展名 获取函数
2009/06/03 PHP
php文件夹的创建与删除方法
2015/01/24 PHP
浅谈php中的访问修饰符private、protected、public的作用范围
2016/11/20 PHP
jQuery的一些注意
2006/12/06 Javascript
IE和FireFox(FF)中js和css的不同
2009/04/13 Javascript
在JavaScript中获取请求的URL参数[正则]
2010/12/25 Javascript
jQuery 源码分析笔记(4) Ready函数
2011/06/02 Javascript
深入理解JavaScript中的传值与传引用
2013/12/09 Javascript
jQuery自定义图片缩放拖拽插件imageQ实现方法(附demo源码下载)
2016/05/27 Javascript
mvc中form表单提交的三种方式(推荐)
2016/08/10 Javascript
laydate.js日期时间选择插件
2017/01/04 Javascript
Node.JS利用PhantomJs抓取网页入门教程
2017/05/19 Javascript
在react-router4中进行代码拆分的方法(基于webpack)
2018/03/08 Javascript
vue cli2.0单页面title修改方法
2018/06/07 Javascript
javascript事件监听与事件委托实例详解
2019/08/16 Javascript
解决Layui中layer报错的问题
2019/09/03 Javascript
layui select 禁止点击的实现方法
2019/09/05 Javascript
解决三元运算符 报错“SyntaxError: can''t assign to conditional expression”
2020/02/12 Javascript
微信小程序之高德地图多点路线规划过程示例详解
2021/01/18 Javascript
[01:01:36]Optic vs paiN 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
Python数据结构与算法之图的最短路径(Dijkstra算法)完整实例
2017/12/12 Python
Python 3 判断2个字典相同
2019/08/06 Python
Python 3.6打包成EXE可执行程序的实现
2019/10/18 Python
Python爬虫实现vip电影下载的示例代码
2020/04/20 Python
python3.4中清屏的处理方法
2020/07/06 Python
CSS3制作3D立方体loading特效
2020/11/09 HTML / CSS
设计模式的基本要素是什么
2014/04/21 面试题
总会计师岗位职责
2014/02/19 职场文书
社团活动总结范文
2014/04/26 职场文书
销售员岗位职责
2014/06/09 职场文书
代理人委托书
2014/08/01 职场文书
纪念九一八事变83周年国旗下讲话稿
2014/09/15 职场文书
《百分数的认识》教学反思
2016/02/19 职场文书
thinkphp 获取控制器及控制器方法
2021/04/16 PHP
MongoDB数据库常用的10条操作命令
2021/06/18 MongoDB
JDK8中String的intern()方法实例详细解读
2022/09/23 Java/Android