代码示例:
<script>
var data = new Array();
data[0] = 'hi';
data[1] = 'bye';
</script>
<script>
alert(data[0]);
</script>
Run Code Online (Sandbox Code Playgroud)
这会出现以下错误: data is not defined
你怎么做这样的工作?特别是如果第一个<script>块由ajax加载到页面上,并且第二个块正在使用它.jQuery解决方案是可以接受的
New 不是关键字.
使用:
var data = new Array();
Run Code Online (Sandbox Code Playgroud)
或者,更简洁:
var data = [];
Run Code Online (Sandbox Code Playgroud)
编辑后,提到第一个脚本块是异步加载的.您的代码将无法正常工作.data一旦加载到页面上,它就是一个全局变量.您需要使用回调模式来正确执行代码.
由于您尚未发布异步代码,因此我不打算提供callback示例.但是,快速解决方案如下:
var interval = setInterval(function(){
if(data) {
/* ... use data ... */
clearInterval(interval);
}
}, 500);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
50082 次 |
| 最近记录: |