0
 var members = [
     ['Fred G. Aandahl', '1951-1953', 'North Dakota'],
     ['Watkins Moorman Abbitt', '1948-1973', 'Virginia'],
 ];

このように動的に作成する必要があります。そのために次のコードを使用しています。

var data = new array();
var members = [];
$.each(data, function (i, elem) {
    data.push(elem["p_age"], elem["p_name"], elem["p_date"]);
    members.push(data);
});
console.log(members);
}

そのために、この値を出力する必要があります。

for(var x = 0; x < members.length; x++) {
    console.log(members[i][0]);
    console.log(members[i][1]);
    console.log(members[i][2]);
}

だから私がこれを試すと、私は次のようになります。

  [object][object][object][object][object][object]
4

6 に答える 6

1

これは疑わしいようです:

$.each(data, function(i, elem) {
  data.push(elem["p_date"],elem["p_name"],elem["p_date"]);

dataを反復処理して、要素を に戻そうとしているようですdata。$.each() は何か他のものを反復する必要があると思います。

elem['p_date']また、配列を 2 回プッシュしている理由についても質問します。

于 2013-08-06T04:05:08.133 に答える
1

for ループxの代わりに使用します。i

for(var x=0;x<members.length;x++){
                      console.log(members[x][0]);
                      console.log(members[x][1]);
                       console.log(members[x][2]);
                 }

それが動作します。

于 2013-08-06T04:51:09.460 に答える
1

いいえ

var data=new array();

しかし

var data=new Array();

Array のクラス名は Array ですが、'array' ではありません。

于 2013-08-06T04:51:32.927 に答える
1

あなたのコードがどのように機能しているのかわかりません! すでに認識している場合は、いくつかのエラーがあります。

次のように変更すると、コードは正常に動作するはずです:-

var data = new Array();//Was an Error in your code
var members = [];
$.each(temp, function (i, elem) {
    data.push(elem["p_age"], elem["p_name"], elem["p_date"]);
    members.push(data);
});

console.log(members);
for (var x = 0; x < members.length; x++) {
    console.log(members[x][0]);//Was an Error in your code
    console.log(members[x][1]);
    console.log(members[x][2]);
}

第二に、あなたにとってどのようにdata.push(elem["p_age"], elem["p_name"], elem["p_date"]);機能しますか?それはあなたに与えるはずですundefined

明確にするために、私はあなたのコードをフィドルに書き留めました。見てください。

于 2013-08-06T05:33:07.230 に答える
1

それらをオブジェクトとして扱っているからです。toString() メソッドを使用してみてください。

于 2013-08-06T04:47:51.293 に答える