我正在尝试使用 localStorage 创建用户数据库。我只需要使用唯一的 ID 存储创建的用户,以便稍后可以将其作为 key 引用。现在我的 application.js 中有这段代码:
$(document).ready(function() {
$("#signupform").submit(function(e) {
e.preventDefault();
var user = {
name: $('#pname').val(),
email: $('#email').val()
};
localStorage.setItem('user', JSON.stringify(user));
console.log(JSON.parse(localStorage.getItem('user')).name);
var html = new EJS({url: 'templates/usershow.ejs'}).render(user);
var content = document.getElementById('content');
content.innerHTML = content.innerHTML + html;
$("#signupform").remove();
});
});
我需要 localStorage.setItem('user'... 类似于 localStorage.setItem('i'... ,其中“i”在单击提交按钮时随着每个新创建的用户(如索引)递增.使用用户电子邮件作为 key 会更有意义吗?这样我就可以通过电子邮件查找每个用户?我将如何去做呢?再说一次......我只是想建立一个用户数据库,其中我可以使用 localStorage 轻松引用用户及其信息。告诉我如何操作!
最佳答案
我会通过在 localStorage 中存储 nextUniqueId
来增加 ID,然后获取 key 并增加它。像这样的事情:
function getNextUnique () {
var next = localStorage.getItem('nextUniqueId');
next = next ? parseInt(next) : 0;
var newNext = next + 1;
localStorage.setItem('nextUniqueId', newNext);
return next;
}
每当您想要保存新用户时调用它:
localStorage.setItem(getNextUnique(), JSON.stringify(user));
关于javascript - 使用 localstorage 创建和存储用户对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16888939/