0
我有一個數組,可以在查看/查看時收集圖像的統計數據。讀取數組時,它會顯示捕獲的信息,例如用戶查看的日期以及特定用戶_id(由Meteor.user()._id;
生成)。如下圖所示顯示:如何避免重複數組push()函數中的字段?
{viewedDate: "Sat Apr 08 2017 23:00:47", viewedBy: "udEnfEmy5DSBvDsSy"}
{viewedDate: "Sat Apr 08 2017 23:01:17", viewedBy: "udEnfEmy5DSBvDsSy"}
{viewedDate: "Sat Apr 08 2017 23:01:27", viewedBy: "udEnfEmy5DSBvDsSy"}
{viewedDate: "Sat Apr 08 2017 23:02:37", viewedBy: "udEnfEmy5DSBvDsSy"}
正如你會注意到,在viewedBy
領域重複。如何避免viewedBy
字段中的重複項?
查找下面我當前的代碼:
var viewStatistics = buyList.find({_id:"kegqdvFHFoQptvJXn"});
var currentUserID = Meteor.user()._id;
viewStatistics.forEach(function(itemName){
viewStatisticsArray = [,...itemName.viewStatisticsArray];
if (viewStatisticsArray.indexOf(itemName)== -1) viewStatisticsArray.push({viewedDate: Date(), viewedBy: Meteor.user()._id });
});
在一個失敗的嘗試,以避免進入重複爲viewedBy
我也曾嘗試以下邏輯上使的感覺很多的代碼,但未能獲得預期的效果:
if (viewStatisticsArray.indexOf(itemName.viewedBy)== -1) viewStatisticsArray.push({viewedDate: Date(), viewedBy: Meteor.user()._id });
任何幫助非常感謝!
爲什麼不乾脆將「udEnfEmy5DSBvDsSy」保存在一個變量中,然後將'viewedBy'字段設置爲變量? – Carcigenicate