javascript - 如何在javascript中调用函数数组的索引号

标签 javascript

我有以下函数列表:

var functions = {
                    blah: function () {
                        alert("blah");
                    },
                    foo: function () {
                        console.log("foo");
                    }
                };

我现在正在尝试访问 functions 数组的指定索引,但是我只是得到了未定义。

因此 console.log(functions[0]); 返回未定义。

谁能解释为什么会这样,并指导我如何在 javascript 中调用函数数组的指定索引?我需要按顺序循环遍历数组,因此需要按位置编号而不是名称来调用它。

最佳答案

它不是数组。它是一个对象。

你只需这样调用它:

functions.foo();

functions.blah();

如果你想要一个函数数组,你的语法应该是这样的:

var functions = [{
    blah: function () {
        alert("blah");
    }
}, {
    foo: function () {
        console.log("foo");
    }
}];

你可以这样调用它:

functions[0].blah();

你甚至可以这样做:

var functions = [alert("blah"), console.log("foo")];

functions[0];
functions[1];

参见此处:http://jsfiddle.net/donal/29r8sthd/1/

关于javascript - 如何在javascript中调用函数数组的索引号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28891033/

相关文章:

javascript - 如何确定脚本中的哪些内容阻止了 HTML 渲染?

javascript - react 如何将变量传递给获取请求

javascript - NodeJS 从另一个调用原型(prototype)

javascript - 如何组合元素变换?

javascript - 下拉菜单点击关闭

javascript - 服务 worker : Return cached response first and fetch response async

带问号的 JavaScript src

javascript - 内容丰富的 Javascript SDK 和 NativeScript

javascript - 调试复杂的 HTML/CSS/JavaScript 页面是否可行?

javascript从类名分配函数