当前位置: 首页 > 面试题库 >

Javascript-函数名称中的变量,可以吗?

浦泳
2023-03-14
问题内容

我希望这个问题不是太简单,但是我不知道:(

如何在函数名称中使用var启动函数?

例如 …

我的职能

function at_26();
function at_21();
function at_99();

启动功能

var test_id = 21;   
at_'+test_id+'();   // doesn't work

我希望有人能帮助我。

提前致谢!彼得


问题答案:

将函数存储在一个对象中,而不是使其成为顶层。

var at = {
    at_26: function() { },
    at_21: function() { },
    at_99: function() { }
};

然后,您可以像访问其他任何对象一样访问它们:

at['at_' + test_id]();

您也可以直接从window对象访问它们…

window['at_' + test_id]();

……并避免将它们存储在一个对象中,但这意味着应该在全局范围内进行播放。



 类似资料:
  • 问题内容: 我有一个JavaScript变量,其中包含JavaScript函数的名称。通过使用$ .ajax等加载并放置在页面上,此功能存在于页面上。 谁能告诉我如何调用变量中命名的javascript函数? 该函数的名称位于变量中,因为用于加载页面片段(将其插入到当前页面中)的URL包含要调用的函数的名称。 我愿意就如何实施此解决方案提出其他建议。 问题答案: 我会避免评估。 要解决此问题,您应

  • 问题内容: PHP名称空间可以包含变量吗?如果是这样,如何实现? 问题答案: 不可以。您可以在声明名称空间后设置变量,但是变量将始终存在于全局范围内。它们永远不会绑定到名称空间。您可以从中没有任何名称解析描述来推断出这一点 常见问题解答:您需要了解的有关名称空间的知识(PHP 5> = 5.3.0) 也将不允许使用语法在命名空间中定位变量。

  • 问题内容: 是否可以从数组向JavaScript函数发送可变数量的参数? 我最近写了很多Python,能够接受并发送varargs是一个很棒的模式。例如 是否有可能在JavaScript发送待处理数组 作为 参数数组? 问题答案: 更新 :从ES6开始,您可以在调用函数时简单地使用 传播语法 : 由于ES6还希望将参数视为数组,因此还可以在参数列表中使用传播语法,例如: 并且可以将其与常规参数结合

  • 问题内容: 我有这个: 我想要这个: 问题答案: 更新 正如其他人提到的那样,这不是最快也不推荐的解决方案。 您可以使用eval:

  • 问题内容: 如果我有 我如何在内部找出现在由表示的变量称为? 问题答案: 这是不可能的。即使是按引用传递也不会帮助您。您必须将名称作为第二个参数传递。 但是,您肯定要问的 不是 解决问题的好方法。

  • 问题内容: 是否有可能做到这一点: 我的堆栈中有Dojo和jQuery框架,因此,如果这两个框架都使它变得更容易,它们将可用。 问题答案: 在ES5及更高版本中,无法访问该信息。 在旧版JS中,您可以使用来获得它。 但是,您可能必须解析名称,因为它可能包括一些额外的垃圾。不过,在某些实现中,您可以使用来简单地获取名称。 解析: