Size: a a a

2019 March 07

DG

Danil Gudz in Angular Kyiv
const newObj = {};
Object
 .keys(obj)
 .forEach(key => if(obj[key] === 'Y') newObj[key]=obj[key])
источник

DG

Danil Gudz in Angular Kyiv
вариант не оч:
Object
 .keys(obj)
 .forEach(key => if(obj[key] === 'Y') delete obj[key])
источник

🌀

🌀 maktarsis in Angular Kyiv
Sir 🍀 J
Всем привет.
Подскажите люди добрые как решить простую задачу, из обьекта (ключ: значение) нужно удалить все ключи и значения которые не равны указаному значению?
Например:
{
changeBankDetails: "N"
changeLayout: "N"
emailAddress: "bvcerr2e21bg@ukr.emm"
finishPreauth: "N"
login: "BVCERR2E21BG"
payeeId: "1185"
payeeStaffId: "1166"
payerId: "4184078"
return: "Y"
sendInvoice: "N"
status: "Y"
viewInvoices: "N"
viewOrders: "N"
viewPaymentPage: "N"
}

Нужно оставить в масиве только КЛЮЧИ у которых значение равно 'Y'

Честно и filter и map и reduce пробовал, но что то все никак не поддается мне этот камень))

Подскажиет плз!
Object.keys(YOUR_OBJECT).reduce((acc, key) => {
 const value = YOUR_OBJECT[key]
 return value=== 'Y' ? { ...acc, [key]: value } : acc;  
}, {});
источник

SJ

Sir 🍀 J in Angular Kyiv
Пробую
источник

SJ

Sir 🍀 J in Angular Kyiv
Спасибо большое!
источник

DG

Danil Gudz in Angular Kyiv
@slont если че ж вариант @maktarsis возвращает новый объект, то результат присвоить нужно
источник

DG

Danil Gudz in Angular Kyiv
мне с reduce больше нравится
источник

SJ

Sir 🍀 J in Angular Kyiv
плюсую
источник

🌀

🌀 maktarsis in Angular Kyiv
Да, здесь immutable подход
ты получаешь новый объект

более предсказуемый и тестируемый вариант
источник

🌀

🌀 maktarsis in Angular Kyiv
Советую разобраться с filter, map, reduce)
источник

SJ

Sir 🍀 J in Angular Kyiv
хм, благодарю в любом случае за помощь)
источник

SJ

Sir 🍀 J in Angular Kyiv
🌀 maktarsis
Да, здесь immutable подход
ты получаешь новый объект

более предсказуемый и тестируемый вариант
Спасибо, большое, ну а что если таких объектов 100?
{
changeBankDetails: "N"
changeLayout: "N"
emailAddress: "bvcerr2e21bg@ukr.emm"
finishPreauth: "N"
login: "BVCERR2E21BG"
payeeId: "1185"
payeeStaffId: "1166"
payerId: "4184078"
return: "Y"
sendInvoice: "N"
status: "Y"
viewInvoices: "N"
viewOrders: "N"
viewPaymentPage: "N"
}

На выходе нужно сформировать один массив, в котором будут лежать объекты, со строками (ключи для которых значение = 'Y').
типа
[
0: {return, status},
1: {return, viewOrders},
2: {return, status, viewOrders},
....
]
источник

DG

Danil Gudz in Angular Kyiv
function objectWithPropValue(value, obj) {
 Object.keys(obj).reduce((acc, key) => {
   const value = obj[key]
   return value=== value ? { ...acc, [key]: value } : acc;  
 }, {});
}

var objects = [{...}, {...}, ...];
var objectsWithYValue = objects.map(obj => objectWithPropValue('Y', obj))
источник

SJ

Sir 🍀 J in Angular Kyiv
Danil Gudz
function objectWithPropValue(value, obj) {
 Object.keys(obj).reduce((acc, key) => {
   const value = obj[key]
   return value=== value ? { ...acc, [key]: value } : acc;  
 }, {});
}

var objects = [{...}, {...}, ...];
var objectsWithYValue = objects.map(obj => objectWithPropValue('Y', obj))
Спасибо!!!)))
источник

DM

Denis Martych in Angular Kyiv
источник

S🥐

Sebastien 🥐 in Angular Kyiv
Тут без мемасиков
Тем более боянистых))
источник

DG

Danil Gudz in Angular Kyiv
+)
источник
2019 March 09

VN

Vladyslav Nasadiuk in Angular Kyiv
всем привет! Ребят, а есть может у кого дельная статья на примете, про использование методов внутри html? В часности, не хочется чтобы метод отрабатывал на каждый ченж детекшн. Можно конечно поставить стратегию OnPush, но я думаю не все так просто
источник

AV

Alexey Veligura in Angular Kyiv
Vladyslav Nasadiuk
всем привет! Ребят, а есть может у кого дельная статья на примете, про использование методов внутри html? В часности, не хочется чтобы метод отрабатывал на каждый ченж детекшн. Можно конечно поставить стратегию OnPush, но я думаю не все так просто
если компонент грязный на нем всегда будет дергатся рендер, единственная оптимизация в дергающемся рендере это пюр пайпы, в ivy  уже вроде их не будет )
источник

AV

Alexey Veligura in Angular Kyiv
источник