【发布时间】:2014-01-19 05:57:17
【问题描述】:
我使用localStorage存储一些json数组(不超过25个),当用户注销时,我需要将存储的信息保存在MySQL数据库中。因此,我将数据发送到负责通信和处理所有数据库内容的 PHP 脚本。
无论如何,我一直在网上搜索,我在这里找到了 - Merge two json/javascript arrays in to one array - 我可以使用 concat。
我基本都用这个功能:
function saveEverything() {
var localStorageData = "";
for (var i=0; i < localStorage.length; i++) {
localStorageData = localStorageData.concat(localStorage.getItem(localStorage.key(i)));
}
...
}
... 表示将 localStorageData 发送到 PHP 脚本的 ajax 位。
您应该知道,localStorage 只存储字符串,所以我在设置项目时必须执行 JSON.stringify。您可能已经注意到,在将 localStorage 项目连接到 localStorageData 变量时,我没有执行 JSON.parse。我之前尝试过,当我执行 alert(localStorageData) 时,我只得到了 [Object][object] ...(或类似的东西)。
无论如何,通过这种方法,我将字符串发送到 php,并且每个 json 数组由换行符分隔。这是最好/正确的做法还是我应该坚持 JSON.parse 方式?
【问题讨论】:
标签: javascript php mysql json jquery