Size: a a a

2021 April 11

AK

Aleksei Kowalski in JS Liberty
божечки, бедненькая какая 🌚
источник

В

Виктория in JS Liberty
С фильтром у меня был код тоже
источник

В

Виктория in JS Liberty
Сначала с фильтром, а потом тот вариант, который у тебя в редакторе
источник

В

Виктория in JS Liberty
Переслано от Виктория
Object.keys(obj)
   .filter((key) => obj[key] === false)
   .forEach((key) => delete obj[key])
источник

А

Александр in JS Liberty
судя из моего теста, то так выполняется намного быстрее, чем фильтр в конце был. Но и чуть медленнее, чем вариант вовсе без фильтра (твой изначальны)
источник

А

Александр in JS Liberty
источник

В

Виктория in JS Liberty
Ожидаемо
источник

В

Виктория in JS Liberty
Можно ещё один способ попробовать
источник

В

Виктория in JS Liberty
Щас напишу
источник

В

Виктория in JS Liberty
Рекурсией
источник

ДФ

Дмитрий Филиппенко... in JS Liberty
newVika
источник

p

persona x grata in JS Liberty
НЮ Вика
источник

В

Виктория in JS Liberty
const filter = ([entry, ...entries], obj = {}) => !entry
 ? obj
 : filter(entries, {
   ...obj,
   ...entry[1] === false
     ? {}
     : { [entry[0]]: entry[1] }
 })

filter(Object.entries(obj))
источник

В

Виктория in JS Liberty
И вот так еще

const filter = (entries, obj = {}) => !entries[0]
 ? obj
 : filter(entries.slice(1), {
   ...obj,
   ...entries[0][1] === false
     ? {}
     : { [entries[0][0]]: entries[0][1] }
 })

filter(Object.entries(obj))
источник

А

Александр in JS Liberty
это не лучший вариант) объект мой был изначально из 500к свойств, а этот код даже при 4 к свойств считает в 10 раз дольше, чем твой самый первый способ! Если делаю объект большим, то "Maximum call stack size exceeded" (((
источник

А

Александр in JS Liberty
второй вариант дает такие же цифры) да и результат приходится ощутимо ждать всего на 4 тыс. свойств. А твой первый вариант на пол миллиона свойств считал доли секунды)
источник

А

Александр in JS Liberty
для меня вообще такой код, как эти 2 - какая-то магия... я его разбирать буду минут 10) и то если пойму...
источник

В

Виктория in JS Liberty
Ахах
источник

В

Виктория in JS Liberty
Тоже ожидаемо
источник

В

Виктория in JS Liberty
Есть еще один способ
источник