Давайте потренируемся работать с анонимными функциями. Сделаем функцию each, которая первым параметром будет принимать массив, а вторым - функцию-callback, которая применится к каждому элементу этого массива.
Исходники кода
//let arr = ['user1', 'user2', 'user3'];
//localStorage.setItem('user', JSON.stringify(arr));
//let json = localStorage.getItem('user');
//let arr = JSON.parse(json);
//arr[1] = 'user!!!';
//localStorage.setItem('user', JSON.stringify(arr));
//console.log(localStorage.getItem('user'));
function saveAll(id, data) {
localStorage.setItem(id, JSON.stringify(data));
}
function getAll(id) {
let json = localStorage.getItem(id);
return JSON.parse(json);
}
function get(id, key) {
let arr = getAll(id);
if (arr[key] !== undefined) {
return arr[key];
} else {
return null;
}
}
function set(id, key, newValue) {
let arr = getAll(id);
arr[key] = newValue;
saveAll(id, arr);
}
//saveAll('user', ['user1', 'user2', 'user3']);
set('user', 1, 'user!')
console.log(get('user', 1));