@Intelix

Как называется эта конструкция?

Здравствуйте! Как называется эта конструкция и как мне в цикле сравнить +1 и +2 с другой переменной?

let FList= {
    '+1': {
        name: 'box1',
        type: 'box-box'
    },
    '+2': {
        name: 'circle1',
        type: 'circle-circle'
    },
}


Делаю так:

let figureCode = '+1';

for (figureCode in FList) {
    if (figureCode === FList) {
        
    }
}
  • Вопрос задан
  • 124 просмотра
Решения вопроса 1
#1
const myval = '+1';
const arr = Object.keys(FList) // берем ключи из пар ключ-значение
.filter(key=>key===myval); // ... и фильтруем по совпадению с нашей переменной myval

for(let item of arr){
console.log(FList[item]) // вытаскиваем обьекты по ключам, полученным ранее
}


#2
const myval = '+1';
for(const [key,value] of Object.entries(FList)){
if(key===myval){
console.log(value)
}
}
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Aleksandr-JS-Developer
@Aleksandr-JS-Developer
Лучше проще, чем никогда
let figureCode = '+1';

for (FListItemKey in FList) {
    if (FListItemKey === figureCode ) {
        // ...
    }
}


А вообще, вам не нужно перебирать ключи объекта.
let figureCode = '+1';

const rez = FList[figureCode];
// В rez уже будет нужный вам объект
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы