オブジェクトを配列にプッシュしようとすると、正常に動作します。私はforループでこれを使用しているので、59個のオブジェクトを配列に入れることになっています。それは59のものを配列に入れますが、最初のものだけがオブジェクトです。ここでは、コードは次のようになります。ここではオブジェクトを配列にプッシュすると、そのオブジェクトの中に1つの値しかありません。
for (i = 0; i < game.Levels[LevelNum - 1].Generation[0].LengthGen; i++) {
noise = game.Levels[LevelNum - 1].Generation[0].Noise
var a = new Object(i * 20, 20, 20, Math.round(Math.random() * noise + 1));
game.Levels[LevelNum - 1].Generation.push(a);
console.log("Generated " + i)
}
は、ページ上のコンソールからアクセス出力されます。
[Object, Number*57]
//the times 52 is the number of "Number"'s repeated
私が起こるに必要なものの配列は、高さを持つオブジェクトで満たされてのためにされ、長さ、x、およびy座標。その後、これを使ってボックスを描きます。現時点では私が使用しているコードは1つの値を持つオブジェクトのみを表示します。私はキーを割り当てようとすると(私はそれがどのように呼ばれているのかわからないが、値の前に "x:"をつけると)4つの値すべてに。私はそれを言うとき)は期待され、ゲームは読み込まれません。
実行可能なスニペットとしてポストされたコードは実際に問題の動作を実行または表示する必要があります。 Objectコンストラクタは引数を1つしか取らず、残りは無視されることに注意してください。コンソールの出力は "Generated"という文字列と数字でなければなりません。 – RobG
'var a = new Object(i * 20、20、20、Math.round(Math.random()* noise + 1));'に解決されます。 ) 'は、[* ToObject *](http://ecma-international.org/ecma-262/7.0/index.html#sec-toobject)のルールごとに新しいオブジェクトを返します。 – RobG
@ RobGそれでは、それ以上の出力をする方法 – McMatt