2017-10-15 79 views
0

嗨,大家好!变量中的Javascript函数名称

请问您可以帮助我的功能吗? 代码按计划执行,但只要我用变量替换下面的'SLL'字符串,就会出错。

  • 这工作得很好:X = 'SLL'
  • 这不起作用:X = schemename(假设我定义VAR schemename早些时候码= 'SLL')

请参阅代码低于

function sll() { 
    return 'got it'; 
} 

var mySchemes = { 
    SLL: sll 
}; 

x = 'SLL'; 
mySchemes[x](); 
+0

我不知道你的意思。你能发布更多的代码吗? – Glund

+0

此代码格式不正确......您有一个没有右大括号的开放功能大括号......还有其他什么东西丢失? –

+0

使用'var schemename ='SLL''没什么问题。请编辑你的问题并提供[mcve]。 – Xufox

回答

0

你用什么来运行代码?你可以在StackOverflow上运行代码,看看它运行正常。 可能存在的一个问题是,如果'严格使用'正在执行,在这种情况下,您需要明确定义x

function sll() { 
 
    return 'got it'; 
 
} 
 

 
var mySchemes = { 
 
    SLL: sll 
 
}; 
 

 
var x = 'SLL'; 
 
console.log(mySchemes[x]());