Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

88
Visualizações
Traversing JSON array of objects

I know there are several similar questions on Stack Overflow but despite trying multiple methods, I am still stuck.

I am trying to traverse a JSON array of objects with structure like this

{
"categories": [
    {
        "category_id": "198",
        "category": "Appliances",
        "seo_name": "appliances",
    },
    {
        "category_id": "184",
        "category": "Industrial Appliances",            
        "seo_name": "industrial-appliances"
    },
"params": {
    
    "visible": false,
    "sort_order": "asc",
}

}

I want to get the category and seo-name of each object within categories.

This is what I tried:

fetch(url, {
  method: "GET",
  headers: headers,
})
  .then((response) => response.json())
  .then((json) => { 

    for (let i in json) {
      console.log(json.categories[i].category);
    }
  });

The response I get is:

console.log(json.categories[i].category); 
                               ^ 
TypeError: Cannot read properties of undefined (reading 'category')

How do I get the category and seo-name fields for each object within the categories array?

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Your loop was pretty close - try using the for..of loop:

const json = {
  categories: [
    {
      category_id: "198",
      category: "Appliances",
      seo_name: "appliances",
    },
    {
      category_id: "184",
      category: "Industrial Appliances",
      seo_name: "industrial-appliances",
    },
  ],
  params: {
    visible: false,
    sort_order: "asc",
  },
};


for (let category of json.categories) {
  console.log(category.category + ', ' + category.seo_name)
}

Alternatively, here's how you'd do it with a traditional for-loop:

const json = {
  categories: [
    {
      category_id: "198",
      category: "Appliances",
      seo_name: "appliances",
    },
    {
      category_id: "184",
      category: "Industrial Appliances",
      seo_name: "industrial-appliances",
    },
  ],
  params: {
    visible: false,
    sort_order: "asc",
  },
};


for (let i = 0; i < json.categories.length; i++) {
  const category = json.categories[i]
  console.log(category.category + ', ' + category.seo_name)
}

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda