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_01_理解内存分配原理分析
Oct 11 Javascript
JavaScript中的面向对象介绍
Jun 30 Javascript
js出生日期 年月日级联菜单示例代码
Jan 10 Javascript
如何屏蔽防止别的网站嵌入框架代码
Aug 24 Javascript
JavaScript实现九九乘法表的简单实例
Jun 07 Javascript
JavaScript简单实现弹出拖拽窗口(一)
Jun 17 Javascript
SelecT下拉框选中和取值的解决方法
Nov 22 Javascript
vue中使用vue-router切换页面时滚动条自动滚动到顶部的方法
Nov 28 Javascript
React学习笔记之高阶组件应用
Jun 02 Javascript
小程序实现列表多个批量倒计时
Jan 29 Javascript
微信小程序搜索功能(附:小程序前端+PHP后端)
Feb 28 Javascript
Vue 自定义标签的src属性不能使用相对路径的解决
Sep 17 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
便携利器 — TECSUN PL-365简评
2021/03/02 无线电
简单实用的PHP防注入类实例
2014/12/05 PHP
PHP基于imagick扩展实现合成图片的两种方法【附imagick扩展下载】
2017/11/14 PHP
php解压缩zip和rar压缩包文件的方法
2019/07/10 PHP
yii2.0框架多模型操作示例【添加/修改/删除】
2020/04/13 PHP
IE6 弹出Iframe层中的文本框“经常”无法获得输入焦点
2009/12/27 Javascript
JQuery中的ready函数冲突的解决方法
2010/05/17 Javascript
js检测网络是否具体连接功能的代码
2014/05/23 Javascript
JavaScript中函数表达式和函数声明及函数声明与函数表达式的不同
2015/11/15 Javascript
详解AngularJS中module模块的导入导出
2015/12/10 Javascript
JavaScript结合HTML DOM实现联动菜单
2017/04/05 Javascript
jQueryMobile之窗体长内容的缺陷与解决方法实例分析
2017/09/20 jQuery
three.js实现圆柱体
2018/12/30 Javascript
jQuery实现checkbox全选、反选及删除等操作的方法详解
2019/08/02 jQuery
JS判断数组四种实现方法详解
2020/06/29 Javascript
[01:21:58]守擂赛DOTA2第一周决赛
2020/04/22 DOTA
python的几种开发工具介绍
2007/03/07 Python
python logging类库使用例子
2014/11/22 Python
Python装饰器(decorator)定义与用法详解
2018/02/09 Python
详解Django+Uwsgi+Nginx的生产环境部署
2018/06/25 Python
解决Pytorch 训练与测试时爆显存(out of memory)的问题
2019/08/20 Python
详解Python3 pickle模块用法
2019/09/16 Python
Win10 安装PyCharm2019.1.1(图文教程)
2019/09/29 Python
Python进阶之迭代器与迭代器切片教程
2020/01/29 Python
Notino匈牙利:购买香水和化妆品
2019/04/12 全球购物
英国电子产品购物网站:Tech in the basket
2019/11/08 全球购物
留学生如何写好自荐信
2013/12/27 职场文书
幼儿园评语大全
2014/04/17 职场文书
幼儿园教师的考核评语
2014/04/18 职场文书
2015届本科毕业生自我鉴定
2014/09/27 职场文书
质检员岗位职责范本
2015/04/07 职场文书
个人更名证明
2015/06/23 职场文书
校园运动会广播稿
2015/08/19 职场文书
2016年企业先进员工事迹材料
2016/02/25 职场文书
学会用Python实现滑雪小游戏,再也不用去北海道啦
2021/05/20 Python
使用Python的开发框架Brownie部署以太坊智能合约
2021/05/28 Python