Vérifier si l'objet est dans AngularJS tableau qui est dans localStorage

J'ai cette angularjs tableau: $scope.fav = [] où les éléments (objets) sont ajoutés avec elle sur un appel de fonction. un exemple de ces objets sont {quote: "Some text", controller: some_controller} Quand j'ajoute un nouvel objet dans le tableau, le tableau est enregistré dans localstorage. Le tableau fonctionne exactement de la façon dont je le veux, sauf lorsque j'essaie d'imprimer dans la console.log (), je reçois de nombreux [object, object], dont j'ai supposé que la façon dont il est imprimé. Ce n'est pas le principal problème, mais parce que le tableau fonctionne, comment il en a besoin.

La question que je vais avoir est d'essayer de trouver si un objet est déjà dans un tableau. J'ai essayé

if ($scope.fav.indexOf({quote: q, controller: c}) == -1)

et cela ne semble pas fonctionner, car chaque objet va en était l'indice -1 même si elle était déjà dans le tableau. Je présume que c'est parce qu'il n'est pas de la lecture de l'objet correctement.

Enfin j'ai recours à cette fonction:

$scope.containsObject = function(obj, list) {
var i;
for (i = 0; i < list.length; i++) {
    if (list[i] === obj) {
        return true;
    }
}

return false;

}

qui vérifie si l'objet est dans le tableau. Voici comment je l'appelle:

$scope.addToFav = function(q, c) {
    $scope.value = $scope.containsObject({quote: q, controller: c}, $scope.fav)
    console.log($scope.value);

}

Je reçois une valeur négative pour la somme de portée.de la valeur même si l'objet est dans le tableau.
Désolé pour le long compliquer explication.

Je vous remercie pour votre compréhension,
Ben