無論何時用戶單擊前端的星號,我都會在數組中插入一個對象並使用兩個鍵question_id
和rating
。如果用戶更改任何恆星的評級,然後更新現有密鑰的值(如果存在),則會查找我要查找的內容,否則將條目推入陣列。下面在javascript/angularjs中更新哈希中的鍵的現有值
$scope.yellowPages = [] // is defined
if ($scope.yellowPages.length > 1) {
for (var i = 0 ; i < $scope.yellowPages.length; i++) {
if ($scope.yellowPages[i]["question_id"] == question_id) {
$scope.yellowPages[i]["rating"] = rating; // here updating the existing value of key, but what is happening it's updates and as well as creates a new entry with the updated value.
}
else{
$scope.yellowPages.push({rating: rating, question_id: question_id});
} // if not present
}
}
else{
$scope.yellowPages.push({rating: rating, question_id: question_id}); // for 1st time
}
}
我的最終目標
代碼示例是具有唯一question_id's
有rating
,陣列應該僅5個元素。
謝謝
那麼問題是什麼? – gforce301
我的問題是我如何只保留一個與1特定的question_id相對應的評級,現在發生的是更新當前值以及插入新值。我不希望它插入新值,只要更新對應於該特定鍵的值(如果存在),或者將其插入到數組中。 –