使用JS;我将函数名称作为可选参数传递。我想制作一个开关盒来读取正在传递的函数名称。我如何将 functionVariable 当作字符串“functionVariable”来捕获?
例子:
function test(functionVariable)
{
switch(functionVariable)
{
case firstFunction:
alert('1st');
break;
case secondFunction:
alert('2nd');
break;
}
}
当我提醒 functionVariable 时,它会打印整个函数。这是有道理的,但我正在尝试解决它并只获取函数名称。
编辑 工作示例
function test(functionVariable)
{
switch(functionVariable.name)
{
case firstFunction:
alert('1st');
break;
case secondFunction:
alert('2nd');
break;
}
}
最佳答案
你可以使用 Function.name .
function doSomething() {
// does something
}
console.log(doSomething.name); // "doSomething"
请注意,这仅适用于函数声明和命名函数表达式。未命名的函数表达式将不起作用。
var getA = function getA() {
};
console.log(getA.name); // "getA"
var getB = function() { // Notice the lack of a name
};
console.log(getB.name); // ""
关于javascript - 将函数调用捕获为字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35071227/