7

JavaScript 配列に含まれるすべての要素のリストを取得しようとしていますarray.toStringが、配列の一部の要素が初期化されている場合でも、常に配列のすべての内容が表示されるとは限らないことに気付きました。JavaScript で配列の各要素を、各要素に対応する座標とともに出力する方法はありますか? 配列で定義されているすべての座標のリストを、各座標に対応する値とともに出力する方法を見つけたいと考えています。

http://jsfiddle.net/GwgDN/3/

var coordinates = [];
coordinates[[0, 0, 3, 5]] = "Hello World";

coordinates[[0, 0, 3]] = "Hello World1";

console.log(coordinates[[0, 0, 3]]);
console.log(coordinates[[0, 0, 3, 5]]);
console.log(coordinates.toString()); //this doesn't print anything at all, despite the fact that some elements in this array are defined
4

5 に答える 5

11

実際に座標[[0、0、3]]を使用すると、これは[0、0、3]をキーとする座標オブジェクトを意味します。要素を配列にプッシュするのではなく、プロパティをオブジェクトに追加します。したがって、オブジェクトをループするこの行を使用してください。オブジェクトのプロパティをループする他の方法については、これを参照してください。

Object.keys(coordinates).forEach(function(key) {
    console.log(key, coordinates[key]);
});

http://jsfiddle.net/GwgDN/17/

于 2013-03-12T05:55:00.670 に答える
1
for (i=0;i<coordinates.length;i++)
{
document.write(coordinates[i] + "<br >");
}
于 2013-03-12T05:43:11.833 に答える
1

結合関数を使用して、配列のすべての要素を取得します。次のコードを使用します

for (var i in coordinates)
{
    if( typeof coordinates[i] == 'string' ){
        console.log( coordinates[i] + "<br >");
    }
}
于 2013-03-12T05:44:07.620 に答える
0

デバッガーで座標を見ると、オブジェクト座標のプロパティ [0,0,3,5] と [0,0,3] が設定されていることがわかります。つまり、座標は配列ですが、配列として使用していません。

于 2013-03-12T05:44:21.353 に答える