2017-06-24 17 views
0

変数を持つ配列を作成したいのですが、この変数は与えられたtime.Herの後にthemselveを変更する必要があります。誰かが私のコードです。時間の経過とともに変数が変更された配列

 var cookieArray = new Array(window.setInterval(myCallback, 2000)); 

     function myCallback() { 

       cookie1 = Math.floor((Math.random() * 810) + 0); 
       cookie2 = Math.floor((Math.random() * 810) + 0); 
       cookie3 = Math.floor((Math.random() * 810) + 0); 
       cookie4 = Math.floor((Math.random() * 810) + 0); 
       cookie5 = Math.floor((Math.random() * 810) + 0); 
       cookie6 = Math.floor((Math.random() * 810) + 0); 
       cookie7 = Math.floor((Math.random() * 810) + 0); 
       cookie8 = Math.floor((Math.random() * 810) + 0); 
       cookie9 = Math.floor((Math.random() * 810) + 0); 
       cookie10 = Math.floor((Math.random() * 810) + 0); 
     } 

PS:あなたは配列を作成、それを初期化していなかった

答えて

1

D:私の悪いenglischのため申し訳ありませんが、私はまだ学生です。 アレイを初期化するには、arrayName[0]=valueを使用する必要があります。

var cookieArray =[]; 
 
    
 
window.setInterval(myCallback, 2000); 
 

 
function myCallback() { 
 
     cookieArray[0] = Math.floor((Math.random() * 810) + 0); 
 
     cookieArray[1] = Math.floor((Math.random() * 810) + 0); 
 

 
     console.log(cookieArray); 
 
} 
 
    

+0

ああ大丈夫感謝を。 – Yuto

0

あなたが取ったアプローチはOKですが、プログラミングエラーの多くが含まれています。すべての まず、あなたの配列を宣言するためには、次の操作を行う必要があります

var cookieArray = new Array(10); 

10個の要素を持つことになりますcookieArrayを意味します。各要素にアクセスするには、cookieArray[i]を使用します。ここで、iは、配列のi + 1要素を表します。

は最後に、私はどうなる:ここ

var cookieArray = new Array(10); 

setInterval(function() { 
    for(int i = 0; i < cookieArray.length; i++) { 
     cookieArray[i] = Math.floor((Math.random() * 810) + 0); 
    } 
}, 2000); 

は、setIntervalwindow.setIntervalと同じです。

+0

ああありがとうございます。 – Yuto

1

また、行うことができます:

var cookieArray=(new Array(10)).fill(0);//create a new Array with 0s 

setInterval(function(){ 
    //refill array every 2seconds 
    cookieArray=cookieArray.map(()=>Math.floor((Math.random() * 810) + 0)); 
},2000); 
+0

ああありがとうございます。 – Yuto

関連する問題