javascript - 从 localStorage 在数组上运行 for 循环
问题描述
我正在创建并存储一个数组localStorage
,我想使用for
循环将数组解析为divs
容器中的单独数组。这是我到目前为止所拥有的:
var arr = ['item 1', 'item 2', 'item 3'];
window.localStorage.setItem('myArr', JSON.stringify(arr));
function populateContainer() {
var newArr = window.localStorage.getItem('myArr');
$('.container').html('');
for (var i = 0, len = newArr.length; i < len; i++) {
$('.container').append('<div>' + newArr[i] + '</div>');
}
}
populateContainer();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="container"></div>
不幸的是,这样做是div
为数组项的每个单独字符创建一个单独的字符,所以我最终得到 18divs
个字符,每个字符而不是 3divs
个数组项的 3 个字符。抱歉,该片段不起作用,显然 SO 不支持localStorage
?
解决方案
您正确地存储了 JSON ,但在检索它localStorage
时还需要将其返回:parse()
var arr = JSON.parse(window.localStorage.getItem('myArr'));
推荐阅读
- mysql - 如何仅根据 Laravel 7 中的 HTML 表单值更新特定列
- javascript - 使用 lodash 映射数据
- r - excel 中的自定义 H:M:S 字段类型,在 R 中加载时会留下 3 到 4 个整数。如何将其加载回原来的显示?
- c++ - 如何在 C++ 中定义通用接口
- r - 尝试在我的 netcdf 数据集的列表中创建一个列表
- vba - Word 2016-如何在受保护的文档中复制/粘贴选定的富文本内容控件-VBA?
- r - 是否有一种 R 方法可以保留数字并丢弃相同值的文本(例如 6 和一点)
- mysql - 如何同时运行 mysql Workbench 的 2 个选项?
- jsonata - JSONata 性能/效率假设
- flutter - 在 ChangeNotifier 的 addListener 回调中使用 setState