0
私はオブジェクトデータをループしていますが、この未定義の値を取得しています。未定義のプロパティを読み取ることができません
理由はわかりませんが、誰かが説明できることを期待していました。それはその未定義を言うだろう、なぜ私は思ったんだけど
function is_occupied(position) {
for (var x in sdata) {
for (var y in sdata) {
// error's here Cannot read property '2' of undefined
var ex = sdata[x][y][2] > position.block_width ? (sdata[x][y][2] + (sdata[x][y][2] - position.block_width)) : sdata[x][y][2],
var ey = sdata[x][y][3] > position.block_height ? (sdata[x][y][3] + (sdata[x][y][3] - position.block_height)) : sdata[x][y][3];
if (position.x >= sdata[x][y][2] && position.x <= ex && position.y >= sdata[x][y][3] && position.y <= ey) {
alert('hit');
}
}
}
}
:
//globally set
var sdata = {"4":{"7":["1","7","3","3"]},"3":{"3":["2","8","1","1"]}};
そしてループIこのようなオブジェクト:
私のオブジェクトは、このようなものですか? = /それを解決することはできません。そのオブジェクトの配列データにposition [2]を取得しているとします。
ああ!良いスポットサー!そうだった! :) – Sir