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

 更新时间:2007年09月12日 21:03:49   作者:  
比如我们要在一个类中设定一个方法可以根据调入一个方法保存在类变量中,等需要的时候可以通过访问类变量来得到。
通常如果我们生成一个实例
如: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对象小结

    这次主要测试了几个主要的对象,包括string,date,数组。用date对象做了个类似倒计时的功能,呵呵
    2010-07-07
  • javascript 设计模式之单体模式 面向对象学习基础

    javascript 设计模式之单体模式 面向对象学习基础

    单体是在脚本加载时创建的,能将一系列有关联的变量和方法组织为一个逻辑单元,逻辑单元里面的内容通过单一的变量进行访问,也是笔记基础与常用的面向对象的定义方法。
    2010-04-04
  • js对象的比较

    js对象的比较

    项目中需要比较两个对象是否相等,给Object对象开展了(别紧张,别说我把它污染了),一个实现而已,象java一样可以只给自己想要的类重写equals方法。
    2011-02-02
  • JavaScript 继承详解(四)

    JavaScript 继承详解(四)

    在本章中,我们将分析Douglas Crockford关于JavaScript继承的一个实现
    2009-07-07
  • JavaScript的面向对象方法以及差别

    JavaScript的面向对象方法以及差别

    JS作为一种动态语言,在语法上有相当大的自由度,所以造成了一种功能,有N种写法的局面。 在JS中实现OOP,一般来说有两种方法:
    2008-03-03
  • 前端开发必须知道的JS之原型和继承

    前端开发必须知道的JS之原型和继承

    原型和闭包是Js语言的难点,此文主要讲原型及原型实现的继承,在(二)中会讲下闭包,希望对大家有所帮助。若有疑问或不正之处,欢迎提出指正和讨论。
    2010-07-07
  • Javascript面向对象编程(二) 构造函数的继承

    Javascript面向对象编程(二) 构造函数的继承

    这个系列的第一部分,主要介绍了如何"封装"数据和方法,以及如何从原型对象生成实例。
    2011-08-08
  • javascript 面向对象,实现namespace,class,继承,重载

    javascript 面向对象,实现namespace,class,继承,重载

    这几天老大天天嚷嚷要重构我们写的javascript,抱怨代码太混乱,可读性差,维护困难,要求javascript也按面对象的模型来重构。
    2009-10-10
  • javascript 对象入门实例教程

    javascript 对象入门实例教程

    学习javascript 对象操作的朋友可以参考下,这个是入门级教程。
    2010-04-04
  • JavaScript 继承使用分析

    JavaScript 继承使用分析

    继承,通俗地说,之前你写过一些类,这些类中有一些是而你现在要写的类的功能的子集或者基本相同,那么你不用完全重新写一个新的类,你可以把之前写的类拿过来使用.这样的一种代码重用过程就叫做继承
    2011-05-05

最新评论