2014-10-08 56 views
0

下面编写JavaScript代码访问的变量,我需要访问变量内部通话功能通过参数

$(document).ready(function(){ 
var a=10; 
call("a"); 
function call(x) { 
//alert 10 using x 
} 
}); 

请不要更改代码,只写了正确的警告声明

+0

尝试'alert(window [x]);'。我在Chrome中测试过它,并且在其他浏览器的idk上运行,但是在FF中也会起作用。 – Romeo 2014-10-08 12:26:27

+0

不起作用,试过了! – 2014-11-12 09:56:43

回答

0

尝试做这样的,

$(document).ready(function(){ 
    var a=10; 
    call(a); 
    function call(x) { 
    alert(x); 
    } 
}); 

在您的代码中,您将变量作为字符串传递。所以它不会像预期的那样做事情。您可以使用eval()来达到此目的,即从字符串格式化的变量名中读取值。但它不是推荐的,因为它在运行时修改范围。

+0

@Downvoter:我可以寻求你的投票理由。? – 2014-10-08 12:27:35

+0

你改变了代码,我想。 – Romeo 2014-10-08 12:28:48

+0

@Romeo我没有改变任何东西。只是将代码格式化为更好的视图,并在其中添加了我的想法。 – 2014-10-08 12:29:42