0

2 番目の関数の NatArray[ ] にアクセスできず、2 番目の関数の 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ので、2番目の関数を呼び出し、アラート内のアラートと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 に答える