javascript - 使用本地存储对数组中的数据进行字符串化
问题描述
我已经尝试过几次让它工作,我正在制作一个带有文本函数输入的排行榜,该输入设置本地存储值。我无法让它与使我的键成为一个数组一起工作,这样我就可以对同一个键有多个值。
var userName = document.getElementById('navn');
var userAvg = document.getElementById('avg');
var userAmount = document.getElementById('amount');
function addData() {
localStorage.setItem('userName', userName.value);
localStorage.setItem('userAvg', userAvg.value);
localStorage.setItem('userAmount', userAmount.value);
var table = document.getElementById("myTable");
var row = table.insertRow(4);
var cell1 = row.insertCell(0);
var cell2 = row.insertCell(1);
var cell3 = row.insertCell(2);
cell1.innerHTML = navn.value;
cell2.innerHTML = avg.value;
cell3.innerHTML = amount.value;
}
<html>
<div id="board">
<ul id="list"></ul>
<br/> Navn
<input type="text" id="navn" />
<br/> Gennemsnitlig Promille
<input type="text" id="avg" />
<br/> Antal genstande i alt
<input type="text" id="amount" />
<br/>
<br/>
<button type="button" onclick="addData()">Tilføj Data </button>
<table id="myTable">
<tr>
<th onclick="sortTable(0)">Navn</th>
<th onclick="sortTable(1)">Gennemsnitlig Promille</th>
<th onclick="sortTable(2)">Antal Genstande i alt</th>
</tr>
</table>
</div>
</html>
解决方案
当您将数组存储在本地存储中时,您需要对其进行字符串化,当从本地存储中获取时,您需要再次解析 JSON。
这是一个例子:
//saving to local storage
localStorage.setItem("userName", JSON.stringify(userName.value));
//reading from local storage
var userName = JSON.parse(localStorage.getItem("userName"));
在您的情况下,您可以创建一个像这样的对象:
let user = {
userName: "...",
userAvg: "...",
userAmount: "..."
}
保存它localStorage.setItem("user", JSON.stringify(user))
。
使用 检索其内容user = JSON.parse(localStorage.getItem("user"))
。
推荐阅读
- xml - 使用自定义顺序的 XML 排序
- javascript - 快速/节点获取的套接字挂起错误
- python - 即使在标记化之后,Keras pad_sequences 也会失败
- powershell - Visual Studio 2019 Powershell 中的 Enter-VsDevShell 给出错误 FileNotFoundException
- ios - 如果 Swift 中有两个不同的类符合 CBCentralManagerDelegate 或 CBPeripheralManagerDelegate 协议,这是否有意义?
- python - 在 Python 中,在从另一个线程读取变量时从一个线程为变量分配一个新值是否安全?
- javascript - select2: items added programatically have no text
- python - Python Checking the beginning of a line for an ip address
- python - 等待dynamodb创建表,避免Requested resource not found
- python - My list prints out the Objects instead of the values