为了账号安全,请及时绑定邮箱和手机立即绑定

在 for 循环中加载函数 - 变量 functionname[variable]

在 for 循环中加载函数 - 变量 functionname[variable]

慕标5832272 2021-11-18 10:08:48
是否可以将函数命名为数组 [x]?我正在寻找一种在 for 循环中加载不同函数的解决方案。我会像这个函数名一样声明函数。然后我将使用数组 = ["name", ...]; 在 foo 循环中调用函数;function functionname["aaa"]() {console.log("is for aaa");}array = ["aaa", "bbb", "ccc"];for (var i = 0; i < array.length; i++) {functionname[array[i]]();}
查看完整描述

3 回答

?
绝地无双

TA贡献1946条经验 获得超4个赞

因此,如果我理解正确的话,您想遍历一个函数数组,调用数组中位于循环中当前迭代索引处的函数。


我不知道你的目标是什么,但这是一种可能的解决方案,尽管有几种方法可以解决这个问题:


const aaa = () => console.log('aaa');

const bbb = () => console.log('bbb');

const ccc = () => console.log('ccc');


const array = [aaa, bbb, ccc];


for (var i = 0; i < array.length; i++) {

  array[i]();

}


查看完整回答
反对 回复 2021-11-18
?
慕森卡

TA贡献1806条经验 获得超8个赞

您可以创建函数查找表。


let functionname = {

    "aaa": () => {

        console.log("is for aaa")

    },

    "bbb": () => {

        console.log("is for bbb")

    }

};

没有箭头函数:


var functionname = {

    "aaa": function aaa() {

        console.log("is for aaa");

    },

    "bbb": function bbb() {

        console.log("is for bbb");

    }

};


查看完整回答
反对 回复 2021-11-18
?
潇潇雨雨

TA贡献1833条经验 获得超4个赞

您可以将函数分配为对象的成员:


let myObj = {

    "aaa": function () {

        console.log("is for aaa");

    },

    "bbb": function () {

        console.log("is for bbb");

    }

};


myObj["ccc"] = function () {

        console.log("is for ccc");

    };


array = ["aaa", "bbb", "ccc"];


for (var i = 0; i < array.length; i++) {

    myObj[array[i]]();

}


查看完整回答
反对 回复 2021-11-18
  • 3 回答
  • 0 关注
  • 146 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信