JS властивість Storage.length


Загальний опис

length — це властивість об'єкта Storage (наприклад, localStorage або sessionStorage), яка повертає кількість елементів, що зберігаються у сховищі. Вона відображає загальну кількість записаних ключів у сховищі, що дозволяє дізнатися, скільки елементів було додано.

Коли ви додаєте елементи в сховище через методи, такі як setItem(), властивість length оновлюється відповідно до кількості доданих елементів. Наприклад, якщо ви додаєте два елементи у localStorage, властивість length буде дорівнювати 2.

localStorage.setItem("name", "Alice");
localStorage.setItem("age", "25");

console.log(localStorage.length); // Виведе: 2

У цьому прикладі до localStorage додаються два елементи: "name" і "age". Властивість length повертає значення 2, оскільки є два елементи у сховищі.

Властивість length є тільки для читання, тобто ви не можете змінити її безпосередньо. Вона автоматично оновлюється кожного разу, коли ви додаєте або видаляєте елементи через методи setItem(), removeItem() або clear().

автор: Bond

Порада

Ця властивість корисна для перевірки розміру сховища або підрахунку кількості елементів. Наприклад, якщо ви хочете пройти через всі елементи сховища, використовуючи length, ви можете отримати доступ до всіх індексів і здійснювати операції з усіма елементами.

автор: Bond
Порада

Не забувайте, що властивість length повертає кількість елементів у сховищі, а не кількість записаних значень. Це важливо, коли ви додаєте чи видаляєте елементи. Наприклад, якщо ви викликаєте метод removeItem(), кількість елементів у сховищі зменшиться, і length це відобразить. Однак, якщо елементи зберігаються з однаковими іменами (ключами), то виклик length буде не зовсім коректно відображати їх кількість.

автор: Bond
Порада

Якщо ви зберігаєте важливі дані в сховищі і хочете перевірити їх наявність перед їх використанням, перевірка значення length може допомогти вам визначити, чи є елементи. Це важливо при роботі з динамічними даними або під час зберігання об'єктів.

автор: Bond

Синтаксис

storage.length

Переглядачі

Підтримка: стаціонарні переглядачі
Переглядач Google Chrome Mozilla Firefox Apple Safari Opera Microsoft EDGE Microsoft Internet Explorer
4 3.5 4 10.5 12 8
Підтримка: мобільні переглядачі
Переглядач Mobile Google Android Mobile Google Chrome Mobile Mozilla Firefox Mobile Apple Safari
4.4 18 6 3.2
Підтримка: серверні переглядачі
Переглядач Deno
1.10

Приклади

+ запропонувати свій приклад у пісочниці

Цей приклад демонструє роботу з властивістю length об'єкта localStorage. Користувач може додавати нові пари ключ-значення через форму, і при кожній зміні кількість елементів у сховищі оновлюється. Кнопка "Оновити кількість елементів" дозволяє вручну перевірити кількість елементів у сховищі без додавання нових. Використовуючи цю сторінку, користувач має наочне розуміння того, як працює властивість length для підрахунку елементів в localStorage.

HTML

<header>
  <h2 class="title">Використання Storage -> length</h2>
  <p class="description">Ця сторінка дозволяє додавати записи в localStorage і відображати кількість елементів у сховищі.</p>
</header>
<main>
  <div class="result">
    <form id="addItemForm">
      <label for="itemKey">Ключ:</label>
      <input type="text" id="itemKey" placeholder="Введіть ключ" required>
      <label for="itemValue">Значення:</label>
      <input type="text" id="itemValue" placeholder="Введіть значення" required>
      <button type="submit">Додати в сховище</button>
    </form>
    <div>
      <p>Кількість елементів у localStorage: <span id="storageCount">0</span></p>
      <button id="updateCountBtn">Оновити кількість елементів</button>
    </div>
  </div>
</main>

CSS

body {
  font-size: 16px;
  line-height: 1.5;
  font-family: monospace;
}

header {
  background-color: #f1f1f1;
  margin-bottom: 25px;
  padding: 15px;
  box-shadow: 0px 0px 3px 0px rgba(118, 118, 118, 1);
}

header h2.title {
  padding-bottom: 15px;
  border-bottom: 1px solid #999;
}

header p.description {
  font-style: italic;
  color: #222;
}

.result {
  background-color: #f8f8f8;
  padding: 15px;
  box-shadow: 0px 0px 3px 0px rgba(118, 118, 118, 1);
}

form input {
  margin: 5px;
  padding: 10px;
  width: 200px;
}

form button {
  padding: 10px 20px;
  background-color: #4CAF50;
  color: white;
  border: none;
  cursor: pointer;
}

form button:hover {
  background-color: #45a049;
}

#storageCount {
  font-weight: bold;
}

JS

// Отримуємо елементи DOM
const addItemForm = document.getElementById('addItemForm');
const storageCountElement = document.getElementById('storageCount');
const updateCountBtn = document.getElementById('updateCountBtn');

// Функція для оновлення кількості елементів у сховищі
function updateStorageCount() {
  storageCountElement.textContent = localStorage.length;
}

// Оновлення кількості елементів при завантаженні сторінки
updateStorageCount();

// Обробник форми додавання елемента в localStorage
addItemForm.addEventListener('submit', function (event) {
  event.preventDefault();

  const key = document.getElementById('itemKey').value;
  const value = document.getElementById('itemValue').value;

  // Додаємо новий елемент в localStorage
  localStorage.setItem(key, value);

  // Очищаємо поля форми
  document.getElementById('itemKey').value = '';
  document.getElementById('itemValue').value = '';

  // Оновлюємо кількість елементів
  updateStorageCount();
});

// Оновлення кількості елементів при натисканні кнопки
updateCountBtn.addEventListener('click', updateStorageCount);
//# sourceURL=pen.js
автор: Bond

Цей приклад перевіряє, чи є дані в localStorage. Якщо кількість елементів більша за нуль, виводиться повідомлення, що є дані. Це корисно для початкової перевірки перед завантаженням контенту на сторінці.

localStorage.setItem("user", JSON.stringify({name: "Alice", age: 30}));
localStorage.setItem("session", "active");

if(localStorage.length > 0) {
    console.log("Маємо дані в сховищі");
}
автор: Bond

Цей код використовує length для перебору всіх елементів у localStorage і виведення їх ключів та значень. Це дозволяє вивести всі дані з сховища для подальшої обробки або відображення на сторінці.

for (let i = 0; i < localStorage.length; i++) {
    let key = localStorage.key(i);
    console.log(key + ": " + localStorage.getItem(key));
}
автор: Bond

Коментарі

Коментарів ще немає — будьте першим!

Відповідь для

Як форматувати текст?
Пишемо Виходить
**важливо**
*акцент*
~~застаріле~~
Виділення в тексті. Те саме роблять кнопки панелі, що спливає над виділеним.
## Як працює каскад
### Порядок оголошень
Заголовки всередині тексту. Найбільший не потрібен — він у сторінки вже є.
[[css/property/color]] Посилання на сторінку довідника. Наберіть [[ — поле веде сходинками (розділ → тип → сторінка), а хибний ключ підкреслить хвилею.
[[!sandbox/S0oh1hBm]] Живий приклад окремим рядком — саме вікно результату. Той самий ключ зі знаком !: наберіть [[! і дійдіть сходинками до потрібної сторінки, список покаже її приклади.
[MDN](https://developer.mozilla.org) Посилання на чужий сайт.
![Схема каскаду](https://site.com/схема.png) Картинка. Опис обов'язковий: його читають пошуковик і незрячі.
Задайте `display: grid` контейнеру Код усередині речення.
```css
.card { display: grid }
```
Код блоком. Мова після трьох лапок вмикає підсвітку.
- Походження
1. Походження
Перелік: маркований і нумерований.
- [ ] дописати приклади
- [x] перевірити в Firefox
Перелік завдань із галочками. Пробіл у порожніх дужках обов'язковий.
> Порядок важить лише за рівної ваги. Цитата на всю ширину абзацу.
Специфічність
: вага селектора; більша перемагає
Список означень: термін, а під ним пояснення з відступом. Пробіл після двокрапки обов'язковий.
Каскад має три критерії[^1]
[^1]: Походження, специфічність, порядок.
Виноска: номер у тексті, примітка внизу сторінки. Без згадки [^1] у тексті примітка не з'явиться.
Відповідь: ||сорок два|| Ховає те, що між рисками: читач бачить на цьому місці розмиту пляму, а решта речення лишається звичайною. Клац — і текст відкрито.
|| Показати рішення
Задайте контейнеру `display: grid`.
||
Ховає цілі абзаци. На сторінці видно лише підпис із першого рядка («Показати рішення»), решта розгортається клацанням по ньому. Закривні риски — окремим рядком.
Порожній рядок Новий абзац. Щоб перенести рядок усередині абзацу, поставте \ в його кінці.

Увійдіть — коментар з'явиться одразу, без капчі й очікування перевірки.

Правка
Зворотний зв'язок
Вхід