gpt4 book ai didi

javascript - 随机生成的本地存储 key

转载 作者:行者123 更新时间:2023-11-28 08:50:23 37 4
gpt4 key购买 nike

我正在创建一些需要许多本地存储 key 的东西。因此我希望使用Math.floor来随机生成用户 key 。

我使用以下方法保存本地存储 key

var randomnumber = Math.floor((Math.random()*100000000)+1)
var randomnumberstringify = String(randomnumber)

function savebox(id) {
var answer = document.getElementById('box').value;
document.write(randomnumberstringify);
localStorage.setItem(randomnumberstringify, answer);
}

以及以下加载 key

    function loadbox() {
if (localStorage.getItem(randomnumberstringify)) {
var answer = localStorage.getItem(randomnumberstringify);
}

else {
var answer = ' ';
}

document.getElementById('box').value = answer;
}

但是,正如您所看到的,加载函数使用“randomnumberstringify”。这是另一个随机数

所以本质上你保存一个随机数并加载另一个随机数(这显然不存在

是否有更好的方法使用随机数作为加载 key 和保存 key ?

最佳答案

如果您的 loadsave 调用发生在同一浏览器 session 中,并且您的 randomnumberstringify 键存在于两者均可访问的范围内的 saveload 函数,并且不会再次为该范围重新创建,您应该可以使用这种方法。

但是,您想要做的是使用本地存储作为持久存储单元,这意味着您希望在不同的页面加载或不同的浏览器 session 中为给定用户访问相同的数据,其中在每次加载中,javascript 变量空间都会获得已删除。

如果您的情况是后一种情况,您应该使用哈希函数来生成 key ,并使用用户相关的字符串来生成哈希函数,这样您最终每次都会为相同的用户生成相同的 key 。

例如,假设您在 JavaScript 环境中定义了 sha1 哈希函数

var randomnumberstringify = sha1('username');

这种 key 生成方法允许您每次为同一用户获取相同的 key 。您可以毫无问题地设置并仅获取相关数据。

这里:http://www.webtoolkit.info/javascript-sha1.html你可以找到哈希函数 SHA1 的 JavaScript 实现。

关于javascript - 随机生成的本地存储 key ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19224387/

37 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com