Ответ 1
Object.keys(localStorage)
.forEach(function(key){
if (/^todo-|^note-/.test(key)) {
localStorage.removeItem(key);
}
});
У меня есть 2 приложения, работающие вместе с localstorage, и мне было интересно, как я могу удалить все ключи, которые начинаются с заметок и todo. Я знаю, что localstorage.clear() очищает все, но это не моя цель.
Вот пример того, что у меня есть в моем localstorage:
Где я хочу удалить все todo- * с помощью кнопки click и all note- * с помощью другой кнопки, используя jquery.
Спасибо большое
Object.keys(localStorage)
.forEach(function(key){
if (/^todo-|^note-/.test(key)) {
localStorage.removeItem(key);
}
});
Я использовал аналогичный метод для @Ghostoy, но я хотел указать параметр, так как я вызываю это из нескольких мест в моем коде. Я не смог использовать имя параметра в регулярном выражении, поэтому вместо него просто использовал подстроку.
function ClearSomeLocalStorage(startsWith) {
var myLength = startsWith.length;
Object.keys(localStorage)
.forEach(function(key){
if (key.substring(0,myLength) == startsWith) {
localStorage.removeItem(key);
}
});
}