@Aslamb
Нравится программирование и все остальное

Как строку «спарсить» в массив?

Участок из моего кода:
var arr = [];
if (!localStorage.getItem('array')) {
localStorage.setItem('array', arr);
} else {
arr = localStorage.getItem('array');
}

Как видите, я помещаю в localStorage массив.
Но на 5 строке в массив arr мне возвращается строка (string).
Как мне "спарсить" возвращаемое значение обратно в массив? Т.е. как откинуть эти кавычки?
  • Вопрос задан
  • 267 просмотров
Решения вопроса 2
link_web
@link_web
Magento, Laravel, Zend, Shopify, Prestashop, WP
Парсите и отправляйте JSON - это будет правильный вариант. Пример :
var array = [1, 2, 3];

localStorage.setItem("array", JSON.stringify(array));
array = JSON.parse(localStorage.getItem("array"));


console.log(typeof array); //object
console.log(array); //[1, 2, 3]
Ответ написан
Комментировать
rockon404
@rockon404
Frontend Developer
Такие опасные операции как JSON.parse лучше оборачивать к блок try/catch, иначе приложение может завершиться исключением, в случае невалидного JSON
try {
  var array = JSON.parse(json);
} catch {e} {
  console.log('error', e);
}
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы