Как перебрать массив, хранящийся в Local Storage JavaScript? - PullRequest
0 голосов
/ 12 апреля 2020

В этом приложении я получаю эту информацию от пользователей в форме HTML: var orderName, trackingNumber, price пользователь обновляет их динамически. Затем я сохраняю их в массиве, преобразую в формат json и сохраняю переменную orderName (которую пользователь дал ранее) в качестве ключа локального хранилища:

    var myArray = [];
    myArray.push(orderName, trackingNumber,price);

    var JsonOrder = JSON.stringify(myArray );
    localStorage.setItem(orderName,JsonOrder );

Теперь я хочу отобразить все заказы и их информация. Одна страница со всеми перечисленными ордерами и orderName должна быть HYPERLINK, которая переводит пользователя на страницу с информацией только по этому ордеру.

Вот что я делаю для l oop через массив:

 var savedOrders = JSON.parse(localStorage.getItem('orderName'));
 var orderName;
 var trackingNumber;
 var price;


 for (var key in savedOrders ) {

  orderName  = savedOrders[key][0];
  trackingNumber = savedOrders[key][1];
  price = savedOrders[key][2];


 }

Это не работает?

Ответы [ 2 ]

0 голосов
/ 12 апреля 2020

Я нашел ответ здесь:


// Get the existing data
var existing = localStorage.getItem('myFavoriteSandwich');

// If no existing data, create an array
// Otherwise, convert the localStorage string to an array
existing = existing ? existing.split(',') : [];

// Add new data to localStorage Array
existing.push('tuna');

// Save back to localStorage
localStorage.setItem('myFavoriteSandwich', existing.toString());

из https://gomakethings.com/how-to-update-localstorage-with-vanilla-javascript/

Я думаю, что есть лучший способ использовать расщепление, так как если пользователь вводит [] или, как их ввод? Но пока это работает, просто не очень хороший метод.

0 голосов
/ 12 апреля 2020

просто сделай


let JsonOrder = JSON.stringify( [orderName, trackingNumber, price] );
localStorage.setItem('someName',JsonOrder );

//---
let orderName, trackingNumber, price;
[orderName, trackingNumber, price] = JSON.parse(localStorage.getItem('someName'));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...