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 相关文章推荐
jQuery powerFloat万能浮动层下拉层插件使用介绍
Dec 27 Javascript
动态获取复选框checkbox选中个数的jquery代码
Jun 25 Javascript
实现前后端数据交互方法汇总
Apr 07 Javascript
js显示文本框提示文字的方法
May 07 Javascript
jQuery实现的Tab滑动选项卡及图片切换(多种效果)小结
Sep 14 Javascript
JS简单实现无缝滚动效果实例
Aug 24 Javascript
js获取浏览器高度 窗口高度 元素尺寸 偏移属性的方法
Nov 21 Javascript
浅析JavaScript中var that=this
Feb 17 Javascript
Angular2开发环境搭建教程之VS Code
Dec 15 Javascript
vue和webpack项目构建过程常用的npm命令详解
Jun 15 Javascript
vue自定义移动端touch事件之点击、滑动、长按事件
Jul 10 Javascript
Ant design vue table 单击行选中 勾选checkbox教程
Oct 24 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中$_POST与php://input的区别实例分析
2015/01/07 PHP
微信自定义分享php代码分析
2016/11/24 PHP
ajax 同步请求和异步请求的差异分析
2011/07/04 Javascript
玩转jQuery按钮 请告诉我你最喜欢哪些?
2012/01/08 Javascript
解析prototype,JQuery中跳出each循环的方法
2013/12/12 Javascript
jQuery实现鼠标点击弹出渐变层的方法
2015/07/09 Javascript
使用CamanJS在Web页面上处理图像的技巧
2015/08/18 Javascript
jquery实现删除一个元素后面的所有元素功能
2015/12/21 Javascript
Bootstrap每天必学之折叠(Collapse)插件
2016/04/25 Javascript
jquery插件方式实现table查询功能的简单实例
2016/06/06 Javascript
在localStorage中存储对象数组并读取的方法
2016/09/24 Javascript
详解js中Json的语法与格式
2016/11/22 Javascript
RequireJs的使用详解
2017/02/19 Javascript
jQuery插件HighCharts绘制2D饼图效果示例【附demo源码下载】
2017/03/21 jQuery
利用node.js本地搭建HTTP服务器
2017/04/19 Javascript
解决canvas画布使用fillRect()时高度出现双倍效果的问题
2017/08/03 Javascript
JavaScript运行原理分析
2018/02/09 Javascript
Vue组件开发技巧总结
2018/03/04 Javascript
Jquery异步上传文件代码实例
2019/11/13 jQuery
Vue中通过属性绑定为元素绑定style行内样式的实例代码
2020/04/30 Javascript
[45:52]完美世界DOTA2联赛PWL S3 Forest vs INK ICE 第二场 12.09
2020/12/12 DOTA
[01:38]完美世界DOTA2联赛PWL S3 集锦第四期
2020/12/21 DOTA
[09:13]DOTA2-DPC中国联赛 正赛 Ehome vs Magma 选手采访 1月19日
2021/03/11 DOTA
部署Python的框架下的web app的详细教程
2015/04/30 Python
Python编程中的异常处理教程
2015/08/21 Python
浅谈Python接口对json串的处理方法
2018/12/19 Python
TensorBoard 计算图的查看方式
2020/02/15 Python
python print 格式化输出,动态指定长度的实现
2020/04/12 Python
Pycharm安装第三方库失败解决方案
2020/11/17 Python
python中remove函数的踩坑记录
2021/01/04 Python
春节活动策划方案
2014/01/24 职场文书
golang日志包logger的用法详解
2021/05/05 Golang
Python数据分析入门之教你怎么搭建环境
2021/05/13 Python
浅谈pytorch中的dropout的概率p
2021/05/27 Python
python中subplot大小的设置步骤
2021/06/28 Python
AJAX实现省市县三级联动效果
2021/10/16 Javascript