将值添加到本地存储,而不是替换它
add a value to localstorage, instead of replacing it
我希望将newUsername
中的值添加到 setUsernamesArray localStorage
,而在我的代码中,它替换了整个值。
法典
$('#signUpButton').click(function() {
var newUsername = $('#usernameSignInBox').val();
signedUpUsernames.push(newUsername);
localStorage.setItem('setUsernamesArray', signedUpUsernames);
});
如果要添加到数组中,则必须意识到 localStorage 中的值不是数组,而是字符串。如果希望该字符串表示数组,并且要更新该数组,则必须执行以下操作:
- 读取字符串,
localStorage.getItem('setUsernamesArray')
, - 然后将其转换为带有
JSON.parse
的数组, - 然后推送到阵列,
- 然后用
localStorage.setItem('setUsernamesArray', JSON.stringify(array))
再次存储
>localStorage
总是将值存储为string
,因此stringify
array
和存储,
localStorage.setItem('setUsernamesArray', JSON.stringify(signedUpUsernames));
在阅读它之前,只需parse
它,
var arrayFrmStorage = JSON.parse(localStorage.getItem("setUsernamesArray"))
localStorage.setItem
将替换localStorage中键的值。
将本地存储视为一个变量。
var a = "Hello";
a = " World"
替换a
的值。为了避免这种情况,我们使用+=
var a = "Hello";
a += " World"
同样,您必须使用更新的值创建另一个对象并将其写入 localStorage。
下面是一个示例。
function setValueToLS(key, prop, value){
var _local = {};
if(localStorage.getItem(key))
_local = JSON.parse(localStorage.getItem(key));
_local[prop] = value;
localStorage.setItem(key, JSON.stringify(_local));
}
相关文章:
- 无法从 jQuery RSS Feed 中的 localStorage 动态替换类
- 我如何找到一个句子中的所有空格并替换忽略它们
- 如何用更合适的内容替换document.write
- 是否有任何方法可以使用jQuery替换在数组中定义值的文本
- 将作用域存储在JSON中
- 使用javascript存储变量的最安全方式
- 当图像转换为本地存储的DataURL时,EXIF被删除
- 如何在chrome扩展中存储数据/结果,以及如何使用setTimeout使其只被调用一次
- 在DOM中查找一个模式并替换它's的内容使用jquery
- 如何有效地将游戏数据存储在URL查询字符串中
- 用空格替换下划线PHP
- 将数组存储到本地存储中,而不是替换
- 无法“替换”样式“中的内容 - 其中”html“存储在变量中
- 将值添加到本地存储,而不是替换它
- JavaScript:.push() 将所有存储的值替换为最后一个推送对象的值
- 如何查找和替换包含数字的名称并将该数字存储在变量中
- IE,Edge将存储文本替换为'null'
- SeleniumIDE替换存储变量中的字符串
- 当第二个数组值存储在php中时,数组值被替换
- 将一个可观察数组存储在变量中,并替换它的内容