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

时间:2021-05-26

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

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

1TopnetTree.prototype.setFileAction=function(){
2varfnName,fnArgs="";
3if(arguments.length==0){
4return0;
5}elseif(arguments.length==1){
6fnName=arguments[0];
7}else{
8fnName=arguments[0];
9for(vari=1;i<arguments.length;i++){
10fnArgs+=","+arguments[i];
11}
12fnArgs=fnArgs.replace(",","");
13}
14
15this.fileAction=fnName+"("+fnArgs+")";
16}

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章