【发布时间】:2016-03-26 23:59:44
【问题描述】:
在我的 NodeJS 应用程序中,我在 Jade 中获得了一个 JSON 对象(工作正常)。在这里,我尝试仅收集(srcTweets)相关数据并将其返回到新的 JSON 对象(stgTweets)中。我用于动态表使用。
在这里我使用以下脚本:
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]);
当我打印数组“stgTweet[0] 和 stgTweet[1]”的不同索引号时,会显示相同的数据。我试图通过在 for 循环中记录元素来解决这个问题,但这看起来很好。而且我真的不知道该往哪里看。
我如何用不同的对象而不是同一个对象填充数组,上面的脚本中发生了什么。
以下是 srcTweets 的示例:
[
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...
}
]
【问题讨论】:
标签: javascript arrays json node.js object