Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 05.10.2023, 21:02
Профессор
Отправить личное сообщение для ureech Посмотреть профиль Найти все сообщения от ureech
 
Регистрация: 11.03.2013
Сообщений: 778

Удаление объекта при объединении.
Привет всем.
if (localStorage.getItem('prevFirsts')){
		stor = JSON.parse(localStorage.getItem('prevFirsts'))// это массив объектов
	} 
var firsts = document.querySelectorAll('.first')
	for (var i = 0; i < firsts.length; i++) {
obj = {...}
arr.push(obj)

}
	if(stor){
		var res = [...arr, ...stor];
	}else{
		var res = arr
	}


Так есть сейчас. Но проблема в том, что при создании объекта в цикле, создаётся как минимум один не нужный. Как мне при объединении объектов проверять obj в arr на условие, что если obj.data == такому же значению, но в stor, значит этот обект не нужен в arr
Ответить с цитированием
  #2 (permalink)  
Старый 05.10.2023, 21:30
Профессор
Отправить личное сообщение для Nexus Посмотреть профиль Найти все сообщения от Nexus
 
Регистрация: 04.12.2012
Сообщений: 3,791

Крутой сервис, рекомендую: https://beautifier.io

Вам что-то типа такого нужно?
var savedEntries = null,
    savedJson = localStorage.getItem('prevFirsts');

if (savedJson != null) {
    try {
        savedEntries = JSON.parse(savedJson);
    } catch (e) {}

}

var dataToIndexEntriesMap = savedEntries.reduce(function(map, item, index) {
    map[item.data] = index;

    return map;
}, {});

var actualEntries = [];
document.querySelectorAll('.first').forEach(function(node) {
    var item = {
        data: node.innerHTML,
    };

    if (!(item.data in dataToIndexEntriesMap)) {
        actualEntries.push(item);
    }
});

var result = [...actualEntries, ...(savedEntries ?? [])];
Ответить с цитированием
  #3 (permalink)  
Старый 05.10.2023, 21:37
Профессор
Отправить личное сообщение для ureech Посмотреть профиль Найти все сообщения от ureech
 
Регистрация: 11.03.2013
Сообщений: 778

Сообщение от Nexus
Крутой сервис, рекомендую
Согласен. Приму к сведению).
Сообщение от Nexus
Вам что-то типа такого нужно
По коду вроде бы да. Спасибо большое. Завтра проверю у себя.
Ответить с цитированием
  #4 (permalink)  
Старый 06.10.2023, 17:07
Профессор
Отправить личное сообщение для ureech Посмотреть профиль Найти все сообщения от ureech
 
Регистрация: 11.03.2013
Сообщений: 778

Всё работает. Ещё раз спасибо.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Reactjs сохранение данных объекта при обновлении состояния PereCC Библиотеки/Тулкиты/Фреймворки 0 18.12.2022 16:03
При спользовании setinterval метод объекта не принимает аргумент tone4ka Общие вопросы Javascript 3 31.03.2020 12:01
автоматическое удаление скоупа директивы при удаление dom узла FanAizu Angular.js 0 25.08.2015 21:38
Удаление элементов из объекта jQuery glukonator jQuery 2 28.07.2012 22:15
Теряется event при перемещении объекта (Drag&Drop) seagor Events/DOM/Window 16 25.07.2007 01:28