Как проитерироваться по объекту с разными полями?
Для каждого массива нужно выполнить свои действия, в зависимости от того, в каком поле они хранятся. Как проверить в цикле for..in равен ли ключ объекта тому, что нужно?
let data = {
columns: ["a", "b", "c"],
rows: ["d", "e", "f"]
}
for (let prop in data) {
if(data.hasOwnProperty(prop)) { // здесь нужно проверить, что prop это columns
///
} else if (data.hasOwnProperty(prop)) { // здесь нужно проверить, что prop это rows
///
}
}
Ответы (1 шт):
Автор решения: Komdosh
→ Ссылка
Метод hasOwnProperty проверяет есть ли у объекта поле с заданным именем:
let data = {
columns: ["a", "b", "c"],
rows: ["d", "e", "f"]
}
for (let prop in data) {
if(data.hasOwnProperty(prop)){
if(prop === 'columns'){
data[prop].forEach(v=>console.log('columns', v));
} else if (prop === 'rows'){
data[prop].forEach(v=>console.log('rows', v));
}
}
}