gpt4 book ai didi

javascript - 使用变量名调用函数

转载 作者:行者123 更新时间:2023-11-30 21:16:42 24 4
gpt4 key购买 nike

我想从变量名调用函数。我的代码在 react.js

要调用的函数 > authentication.signIn()

我的代码如下

var authentication = require('authentication.js');
let controller = "authentication";
let operationId = "signIn";
const data = controller.operationId();

这里controller和operationId是动态的。它们将在下一个循环中改变。对于下一个循环中的示例,operationId 的值是 signOut, Controller 是身份验证。那么对const数据的函数调用如下

const data = authentication.signOut();

但错误来了:controller.operationId 不是一个函数

最佳答案

你需要有一个对象来存储你的 Controller 并从中调用东西

例如:

const controllers = {}
controllers.authentication = require('authentication')
// more controllers...

// later
const method = 'signIn', controller = 'authentication'
controllers[controller][method]()

同样适用于全局对象之类的东西。你也可以把它包装成一个函数

例如非常快

controller = (name, method, ...args) =>{
if (!controllers[name]){
throw `Oh no, unknown controller ${name}`
return
}
controllers[name][method](...args)
}

关于javascript - 使用变量名调用函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45609961/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com