В моем коде я обновлю значение, но не буду хранить новое значение. Предположим, мне нужно ввести какое-то значение в следующем формате:
{
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;
}
});
в этот код введите пользователя, как я могу это сделать?
Я думаю, что список словаря использовать
Вы можете использовать массив, как мой ответ @KuldeepPatel



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Вы можете использовать такой массив:
$('.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 не является функцией
Перед тем, как попробовать: localStorage.savedItem используйте localStorage.savedItem = ""
Но я отредактировал свой код, это предотвращает эту проблему (плохой объект JSON).
Создайте массив
[{firstname: 'kuldeep', lastname: 'patel'},{firstname:'parth',lastname:'pandy'}]=> stringify =>localStorage.setItem