0

我无法在第二个函数中访问 NatArray[ ],并且第二个函数中的 u4count 为 0。可能是什么原因?

<script type="text/javascript">

var NatArray = [];
var NatArrayloc = [];
var u4count = 0;

function Check1()
{
NatArray[0] = 202116108;
NatArrayloc[0] = 202116109;
NatArray[1] = 202116111;
NatArrayloc[1] = 202116112;
NatArray[2] = 202116113;
NatArrayloc[2] = 202116114;
u4count = 3;
}
function Check()
{
 alert("coming here" + u4count + "natentry" + NatArray[0] );
}
</script>

提前致谢

4

3 回答 3

1

按预期为我工作。在这种情况下,调用函数的顺序很重要:

var NatArray = [];
var NatArrayloc = [];
var u4count = 0;

function Check1() {
    NatArray[0] = 202116108;
    NatArrayloc[0] = 202116109;
    NatArray[1] = 202116111;
    NatArrayloc[1] = 202116112;
    NatArray[2] = 202116113;
    NatArrayloc[2] = 202116114;
    u4count = 3;
}

function Check() {
    alert("coming here " + u4count + " natentry " + NatArray[0]);
}

Check1();
Check();

正如一些回答用户发现的那样,未封闭的内联评论不好,但不是您的问题的原因。关于内联代码中的注释

http://fiddle.jshell.net/r8sKf/

于 2013-03-06T10:49:02.393 回答
1

您可以调用这 2 个函数,window.onload这样它就会调用第二个函数以及警报NatArray[ ]中的警报和值。

尝试这样的事情:

var NatArray = [];
var NatArrayloc = [];
var u4count = 0;

function Check1() {
    NatArray[0] = 202116108;
    NatArrayloc[0] = 202116109;
    NatArray[1] = 202116111;
    NatArrayloc[1] = 202116112;
    NatArray[2] = 202116113;
    NatArrayloc[2] = 202116114;
    u4count = 3;
}

function Check() {
    alert("coming here " + u4count + " natentry " + NatArray[0]);
}

 window.onload=function(){
        Check1();
        Check();
    };
于 2013-03-06T10:57:26.393 回答
-2

干得好:

http://jsfiddle.net/R23eD/

您需要<!--从脚本启动中删除 。而且您也没有调用Check1()函数来初始化值

于 2013-03-06T10:49:45.157 回答