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基础资料整理3 正则
Dec 06 Javascript
jcarousellite.js 基于Jquery的图片无缝滚动插件
Dec 30 Javascript
基于jQuery的message插件实现右下角弹出消息框
Jan 11 Javascript
jquery实现清新实用的网页菜单效果
Aug 28 Javascript
JavaScript 浏览器兼容性总结及常用浏览器兼容性分析
Mar 30 Javascript
利用js定义一个导航条菜单
Mar 14 Javascript
微信小程序使用input组件实现密码框功能【附源码下载】
Dec 11 Javascript
微信小程序实现tab页面切换功能
Jul 13 Javascript
js实现开关灯效果
Mar 30 Javascript
JS实现联想、自动补齐国家或地区名称的功能
Jul 07 Javascript
解决vue一个页面中复用同一个echarts组件的问题
Jul 19 Javascript
js之ajax文件上传
May 13 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
PHP操作MongoDB GridFS 存储文件的详解
2013/06/20 PHP
php中常量DIRECTORY_SEPARATOR用法深入分析
2014/11/14 PHP
php利用cookie实现自动登录的方法
2014/12/10 PHP
php ucwords() 函数将字符串中每个单词的首字符转换为大写(实现代码)
2016/05/12 PHP
中高级PHP程序员应该掌握哪些技术?
2016/09/23 PHP
PHP获取当前执行php文件名的代码
2017/03/02 PHP
浅谈PHP中的那些魔术常量
2020/12/02 PHP
javascript div 弹出可拖动窗口
2009/02/26 Javascript
JavaScript类和继承 constructor属性
2010/03/04 Javascript
javascript开发技术大全-第3章 js数据类型
2011/07/03 Javascript
基于jquery的bankInput银行卡账号格式化
2012/08/22 Javascript
jquery的相对父元素和相对文档定位示例代码
2013/08/02 Javascript
jquery实现可拖拽弹出层特效
2015/01/04 Javascript
js实现用户输入的小写字母自动转大写字母的方法
2017/01/21 Javascript
Bootstrap警告(Alerts)的实现方法
2017/03/22 Javascript
Webpack常见静态资源处理-模块加载器(Loaders)+ExtractTextPlugin插件
2017/06/29 Javascript
JavaScript数据结构与算法之队列原理与用法实例详解
2017/11/22 Javascript
6行代码实现微信小程序页面返回顶部效果
2018/12/28 Javascript
D3.js(v3)+react 实现带坐标与比例尺的散点图 (V3版本)
2019/05/09 Javascript
vue实现淘宝购物车功能
2020/04/20 Javascript
javascript实现点击小图显示大图
2020/11/29 Javascript
javascript中导出与导入实现模块化管理教程
2020/12/03 Javascript
python中numpy.zeros(np.zeros)的使用方法
2017/11/07 Python
python逆向入门教程
2018/01/15 Python
python调用staf自动化框架的方法
2018/12/26 Python
Python查找数组中数值和下标相等的元素示例【二分查找】
2019/02/13 Python
对Python中 \r, \n, \r\n的彻底理解
2020/03/06 Python
使用keras实现Precise, Recall, F1-socre方式
2020/06/15 Python
详解torch.Tensor的4种乘法
2020/09/03 Python
selenium+超级鹰实现模拟登录12306
2021/01/24 Python
css3个性化字体_动力节点Java学院整理
2017/07/12 HTML / CSS
加拿大快时尚零售商:Ardene
2018/02/14 全球购物
Everything But Water官网:美国泳装品牌
2019/03/17 全球购物
SQL面试题
2013/12/09 面试题
文明倡议书
2015/01/19 职场文书
助学金感谢信
2015/01/20 职场文书