NodeJSアプリケーションでは、jade内にJSONオブジェクトがあります(これは問題ありません)。ここでは、関連するデータのみを収集し(srcTweets)、これを新しいJSONオブジェクト(stgTweets)に戻そうとしました。ダイナミックテーブルの使用に使用します。異なる配列要素を受け取った場合、同じJSON配列が配列にあります
iは、以下のスクリップ使用ここFORE:
var srcTweets = [];
var srcTweets = !{JSON.stringify(tweets)};
var aantalSrcTweets = srcTweets.length;
//Loop throug all tweets and collect all relevant elementen from srcTweet:
var stgTweet = {}
var stgTweets = [];
console.info('----------START LOOP--------------------');
for(var i = 0; i < aantalSrcTweets; i++){
console.info(i);
stgTweet.Id = srcTweets[i]._id;
stgTweet.userId = srcTweets[i].user.id;
stgTweet.userFollowerCount = srcTweets[i].user.followers_count;
stgTweet.userFriendCount = srcTweets[i].user.friends_count;
stgTweet.userFavouritesCount = srcTweets[i].user.favourites_count;
stgTweet.text = srcTweets[i].text;
stgTweet.coordinates = srcTweets[i].coordinates;
stgTweet.userLocation = srcTweets[i].user.location;
stgTweets[i] = stgTweet;
console.info(stgTweets[i]);
console.info(i);
}
console.info('----------END LOOP--------------------');
//here i get the same items
console.info(stgTweets[0]);
console.info(stgTweets[1]);
iは配列の異なるインデックス番号を印刷 "stgTweet [0]とstgTweet [1]" は、同じデータを示しています。私はforループの要素をログに記録することでそれを把握しようとしましたが、うまく見えます。そして私は本当にどこを見なければならないのか分かりません。
同じオブジェクトの代わりに異なるオブジェクトで配列を塗りつぶすにはどうすればいいですか?上記のスクリプトではどうなりますか?あなたがそうstgTweets[0] === stgTweets[1]
、配列内のすべての要素に同じオブジェクトを再利用していると、オブジェクトはJavaScriptで参照することによって割り当てられるため
[
Object {
_id="56e19eb1ac5e621e0797c423",
truncated=false,
text="@Model_Symphony nu ja,
s... prima Energiequelle...",
more...
},
Object {
_id="56e1a73eac5e621e0797c424",
truncated=false,
text="Vandaag aangekondigd doo...",
more...
},
Object {
_id="56e1a7b4ac5e621e0797c425",
truncated=false,
text="Mooi bedrijfsbezoek aan ...",
more...
}
]
どうもありがとう!!本当にスマートです。私は4分以内に答えを受け入れることができません。それはあなたのためにそれがうまくいけば、私は約30分を行います:-) –