当前位置:首页 > 开发 > Web前端 > JavaScript > 正文

JS 如何调用变量所存函数名对应的函数?

发表于: 2012-07-05   作者:cloudlee8   来源:转载   浏览次数:
摘要: 例如: function a(){}; var name = 'a'; 那么如何通过name这个变量调用 a 函数?   方法1:直接执行   eval(name+"()");   无法通过typeof判断类型   方法2:先获取函数,再执行   var f = windo

例如: 
function a(){}; 

var name = 'a'; 

那么如何通过name这个变量调用 a 函数?

 

方法1:直接执行

 

eval(name+"()");

 

无法通过typeof判断类型

 

方法2:先获取函数,再执行

 

var f = window[name]; //f==a()

alert(typeof(f)); //output==function

f.call(this); //执行

JS 如何调用变量所存函数名对应的函数?

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
先看错误过程 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <
js默认没有提供能直接获取当前执行函数的函数名称方法,但可以通过一些技巧取得当前执行函数的函数
Js函数调用的方式有如下几种情况: 1 (1)具名函数直接调用 2 function foo() 3 { 4 } 5 foo(); 6 7
<!--js.php--> <!-- 方法1 --> <?php #输出应满足javascript语法,对于输出字符串应
有时候我们需要在程序中获取当前运行的函数名,如何简单的做到这点呢?我们可以用getStackTrace轻松
这个问题遇到了两次,两次都在这里跌倒,还好浩哥及时提醒主要原因如下: $db和$dbsel都是由外部引
今天在给人讲C#程序集概念的时候突然被问住了,囧啊。所以又认真地看了下C#程序集的功能,本文就是
我们知道,栈作为一种数据结构,是一种只能在一端进行插入和删除操作的特殊线性表。它按照后进先出
1、Array类型函数 array.concat(item...) 函数功能:关联数组,实现数组相加功能,但并不影响原先数
C++ 动态库导出函数名“乱码”及解决 刚接触C++,在尝试从 dll 中导出函数时,发现导出的函数名都“
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号