是否可以使用JavaScript String变量将自定义应用于JavaScript变量,例如:
app.get(param1, callback)
我希望能够将'get'参数化为字符串, 等等:
let verb = 'get'
app['verb'](param1, callback)
似乎无法正常工作。
有没有办法在JavaScript中执行此操作?
答案 0 :(得分:3)
你几乎就在那里,因为verb
是一个变量,你不应该把它放在引号'
let verb = 'get'
app[verb](param1, callback)
答案 1 :(得分:3)
您应该使用app[verb]
,不带引号,否则您传递字符串"verb"
,而不是verb
变量的值。以下是嵌套在object中的函数示例(非常接近您的情况):
const app = {get: function(param1, param2) { console.log(`Param1: ${param1}, Param2: ${param2}`) }}
let verb = 'get'
app[verb](1, 2)
答案 2 :(得分:2)
app['verb'](params);
尝试调用名为' verb'的函数。
你想要的是:
let verb = 'get';
app[verb](param1, callback);