Как ввести несколько значений в локальное хранилище по словарю с помощью JavaScript?

В моем коде я обновлю значение, но не буду хранить новое значение. Предположим, мне нужно ввести какое-то значение в следующем формате:

{
   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;
        }

    });

Создайте массив [{firstname: 'kuldeep', lastname: 'patel'},{firstname:'parth',lastname:'pandy'}] => stringify => localStorage.setItem

Satpal 20.07.2018 12:54

в этот код введите пользователя, как я могу это сделать?

Kuldeep Patel 20.07.2018 13:14

Я думаю, что список словаря использовать

Kuldeep Patel 20.07.2018 13:15

Вы можете использовать массив, как мой ответ @KuldeepPatel

A-312 20.07.2018 15:03
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
4
4
782
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вы можете использовать такой массив:

$('.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.info(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'
}]

saveItem.push (данные); // Uncaught TypeError: savedItem.push не является функцией

Kuldeep Patel 23.07.2018 07:00

Перед тем, как попробовать: localStorage.savedItem используйте localStorage.savedItem = ""

A-312 26.07.2018 07:01

Но я отредактировал свой код, это предотвращает эту проблему (плохой объект JSON).

A-312 26.07.2018 07:02

Другие вопросы по теме