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


Posted in Javascript onAugust 19, 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 相关文章推荐
JavaScript开发规范要求(规范化代码)
Aug 16 Javascript
jQuery实现MSN中文网滑动Tab菜单效果代码
Sep 09 Javascript
js中获取时间new Date()的全面介绍
Jun 20 Javascript
el表达式 写入bootstrap表格数据页面的实例代码
Jan 11 Javascript
jquery实现的table排序功能示例
Mar 10 Javascript
BootStrap 表单控件之单选按钮水平排列
May 23 Javascript
JavaScript实现图片无缝滚动效果
Jul 07 Javascript
浅谈vue加载优化策略
Mar 19 Javascript
了解javascript中的Dom操作
May 27 Javascript
使用layui日期控件laydate对开始和结束时间进行联动控制的方法
Sep 06 Javascript
微信公众号H5之微信分享常见错误和问题(小结)
Nov 14 Javascript
解决vue prop传值default属性如何使用,为何不生效的问题
Sep 21 Javascript
写了一个layout,拖动条连贯,内容区可为iframe
Aug 19 #Javascript
转自Jquery官方 jQuery1.1.3发布,速度提升800%,体积保持20K
Aug 19 #Javascript
Code: write(s,d) 输出连续字符串
Aug 19 #Javascript
js实现运行代码需要刷新的解决方法
Aug 18 #Javascript
javascript下阻止表单重复提交、防刷新、防后退
Aug 17 #Javascript
一个刚完成的layout(拖动流畅,不受iframe影响)
Aug 17 #Javascript
wordpress之js库集合研究介绍
Aug 17 #Javascript
You might like
跟我学小偷程序之成功偷取首页(第三天)
2006/10/09 PHP
php基础知识:类与对象(4) 范围解析操作符(::)
2006/12/13 PHP
php array_udiff_assoc 计算两个数组的差集实例
2016/11/12 PHP
jQuery 可以拖动的div实现代码 脚本之家修正版
2009/06/26 Javascript
jQuery的事件委托实例分析
2015/07/15 Javascript
Javascript实现鼠标右键特色菜单
2015/08/04 Javascript
jQuery实现图片轮播特效代码分享
2015/09/15 Javascript
JS+CSS实现带小三角指引的滑动门效果
2015/09/22 Javascript
JavaScript构造函数详解
2015/12/27 Javascript
JavaScript中split与join函数的进阶使用技巧
2016/05/03 Javascript
JS高级运动实例分析
2016/12/20 Javascript
jQuery基于xml格式数据实现模糊查询及分页功能的方法
2016/12/25 Javascript
jQuery插件FusionWidgets实现的Cylinder图效果示例【附demo源码】
2017/03/23 jQuery
如何使用bootstrap框架 bootstrap入门必看!
2017/04/13 Javascript
Angularjs验证用户输入的字符串是否为日期时间
2017/06/01 Javascript
深入理解React中何时使用箭头函数
2017/08/23 Javascript
Vue CLI3搭建的项目中路径相关问题的解决
2018/09/17 Javascript
解决Vue-Router升级导致的Uncaught (in promise)问题
2020/08/07 Javascript
[52:40]完美世界DOTA2联赛PWL S2 Magma vs GXR 第一场 11.29
2020/12/02 DOTA
Python代码实现KNN算法
2017/12/20 Python
Django使用HttpResponse返回图片并显示的方法
2018/05/22 Python
Selenium元素的常用操作方法分析
2018/08/10 Python
详解Django CAS 解决方案
2019/10/30 Python
Python3.7基于hashlib和Crypto实现加签验签功能(实例代码)
2019/12/04 Python
Matlab中plot基本用法的具体使用
2020/07/17 Python
Python 实现图片转字符画的示例(静态图片,gif皆可)
2020/11/05 Python
Python基于unittest实现测试用例执行
2020/11/25 Python
python Scrapy框架原理解析
2021/01/04 Python
Python实现钉钉/企业微信自动打卡的示例代码
2021/02/02 Python
详解HTML5中的元素与元素
2015/08/17 HTML / CSS
李维斯德国官方网上商店:Levi’s德国
2016/09/10 全球购物
JD Sports法国:英国篮球和运动时尚的领导者
2017/09/28 全球购物
美国宠物护理专家:Revival Animal Health
2020/01/05 全球购物
金融系应届毕业生求职信
2014/05/26 职场文书
竞选班干部演讲稿500字
2014/08/20 职场文书
十月围城观后感
2015/06/08 职场文书