如何从数组中删除特定的字符串条目

时间:2016-05-20 08:32:07

标签: javascript arrays html5

我正在尝试从数组中删除字符串,但字符串仍然存在。有什么建议吗?

 $scope.removeFavorites = function (word) {
    debugger;
    // retrieve it (Or create a blank array if there isn't any info saved yet),
    var favorites = JSON.parse(localStorage.getItem('favoritesInfo')) || [];

    for (var i = favorites.length - 1; i >= 0; i--) {
      if (favorites[i] === word {
        favorites.splice(i, 1); 
        console.log(favorites[i]);
      }
    }
    //favorites.pop();
    // localStorage.setItem('favoritesInfo', JSON.stringify(favorites));
    console.log(localStorage.getItem('favoritesInfo'));
  }

1 个答案:

答案 0 :(得分:0)

在上面的代码中,拼接正在对收藏夹数组进行拼接,该数组从localstorage获取值

var favorites = JSON.parse(localStorage.getItem('favoritesInfo')) || [];

因此,该值将在收藏夹数组中删除,但不会在localstorage中删除。

localStorage.getItem('favoritesInfo')仍然包含完整的值集。

你有两个解决方案。

  1. 使用收藏夹数组,这是您过滤的列表集合 永远需要。
  2. 使用收藏夹数组更新本地存储     保持同步。