2017-01-08 3 views
0

Привет, я очень рад новым для javascript, и мне бы хотелось узнать простой способ , как я могу убедиться, что могу только обойти элемент еще раз, пока он не добавится к локальному хранилищу и отображает сообщение о том, что оно уже существует. до сих пор я сделал следующее:Как остановить те же данные, которые будут добавлены в локальное хранилище

$(".add").on("click", function() { 
      try { 
       $(this).attr('disabled', true); 
       var IdToAdd = $(this).closest("p").attr("id"); 
       var myFavStaff = JSON.parse(localStorage.getItem("favStaff")); 
       if (myFavStaff == null) { 
        myFavStaff = []; 
       } 
       myFavStaff .push(IdToAdd); 
       localStorage.setItem("favStaff", JSON.stringify(myFavStaff)); 
      } 
      catch (e) { 
       if (e == QUOTA_EXCEEDED_ERR) { 
        console.log("Error: Local Storage limit exceeded"); 
       } else { 
        console.log("Error: Saving to local storage not working"); 
       } 
      } 
     }); 
+0

магазин объект ключом по идентификатору вместо массива, ключи не могут быть повторно использованы ... – dandavis

ответ

0

С техникой вы используете вам нужно будет проверить массив, прежде чем добавить новый идентификатор к нему. Например, вы можете сделать что-то подобное.

if (myFavStuff.indexOf(IdToAdd) !== -1) { 
    // Already exists so show a message 
} else { 
    myFavStuff.push(IdToAdd); 
    localStorage.setItem("favStaff", JSON.stringify(myFavStaff)); 
} 
+0

спасибо David это именно то, что я хотел – user7388968

+0

Рад, что смог помочь. Не стесняйтесь принимать ответ :) –

 Смежные вопросы

  • Нет связанных вопросов^_^