2015-10-12 121 views
0

我有一个JavaScript变量的问题。用JavaScript创建一个全局变量

<script type="text/javascript"> 
    jQuery(document).ready(function($){ 
     var numbers = [1,2,2,2] 
    }) 
</script> 
<script type="text/javascript"> 
    jQuery(document).ready(function($){ 
     console.log(numbers) 
    }) 
</script> 

控制台不显示任何内容。我如何在第二个脚本中使用数字?

+0

看看这个问题:https://stackoverflow.com/questions/4862193/javascript-global-variables –

+0

可能重复[在JavaScript中设置全局变量的最佳方式是什么?](http:/ /stackoverflow.com/questions/3352020/what-is-the-best-way-to-set-a-global-variable-in-javascript) –

回答

0

如果要在两个脚本标记之间使用变量,则必须在全局范围内定义它。另外,您没有任何名为array的东西?下面将工作:

<script> 
    var numbers = null; 
    jQuery(document).ready(function($) { 
     numbers = [1,2,2,2]; 
    }); 
</script> 
<script> 
    jQuery(document).ready(function($) { 
     console.log(numbers); 
    }); 
</script> 
+0

不知道你从哪里得到'array',我没有看到这个问题? –

+0

对原始帖子进行了修改。最初它是'console.log(array)' – TbWill4321

0

不,您已经定义numbers第一ready功能的范围内,因此没有第二个函数中定义。你将不得不在函数之外声明该变量,以便在此处为其提供所需的范围。但是,除非您有理由在此使用两个单独的脚本,否则我不会提示。

0

我修好了。我使用“window.numbers = [1,2,2]”,然后在第二个脚本中将其称为“window.numbers”。但是我不知道我什么时候用这种方式,这对于表演来说不会有好处。