javascript - 如何使用 JavaScript 通过字典在本地存储中输入多个值?

标签 javascript jquery html arrays

在我的代码中,我将更新一个值,但不会存储新值。假设我必须按以下格式输入一些值:

{
   firstname:'kuldeep', 
   lastname:- 'patel'
}

然后在输入值后,更新值。该值存储在 localStorage 中。但是我想添加一些不同的值,如下所示:

{
   firstname: 'kuldeep',
   lastname: 'patel', 
   firstname:'abc', 
   lastname:'xyz',    
   firstname:'parth', 
   lastname:'pandy'
}

这是我获取上述输入的代码:

$(document).ready(function(){
    $('.save').on('click',function(e){
        e.preventDefault();

        var data = {
            "Firstname": $('#name').val(),
            "Lastname": $('#lastname').val()
        };

        var saveData = JSON.stringify(data);

        if( typeof(Storage) !== undefined ){
            localStorage.setItem("savedItem", saveData );
            document.write(savedItem);
        } else {
            alert('Storage is not available in your browser!');
            return false;
        }

    });

最佳答案

你可以像这样使用数组:

$('.save').on('click', function(e) {
    if (!localStorage)
        return alert('Storage is not available in your browser!');

    const savedItem = ((savedItem) => {
        try {
            return (savedItem) ? JSON.parse(savedItem) : [];
        } catch (e) { return []; }
        if (!a instanceof Array)
             return [];
    })(localStorage.savedItem);

    const data = {
        "Firstname": $('#name').val(),
        "Lastname": $('#lastname').val()
    };

    savedItem.push(data);

    localStorage.savedItem = JSON.stringify(savedItem);

    console.log(localStorage.savedItem);

    e.preventDefault();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input id="name" />
<input id="lastname" />


<input class="save" type="button" value="save" />

输出(对象):

[{
   firstname: 'kuldeep',
   lastname: 'patel',
}, { 
   firstname:'abc', 
   lastname:'xyz',
}, {
   firstname:'parth', 
   lastname:'pandy'
}]

关于javascript - 如何使用 JavaScript 通过字典在本地存储中输入多个值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51440931/

相关文章:

javascript - 如何将变量从嵌入式 SVG 发送到 HTML 文档?

javascript - 循环遍历除最后一个值之外的 html 选择列表

javascript - typescript 获得函数内的当前范围或变量()

Javascript - 在每个实例上增加类变量

jquery - 在 jQuery 中循环遍历数组

javascript - 使用 Charts.js 增厚 X 轴

javascript - 单击时如丝般顺滑的滚动?

javascript - id 字段未附加到 div mvc 4

javascript - 跟踪模式内 HTML 表单的更改

如果 td 没有文本,jquery 隐藏表格行