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

187
Visualizações
¿Cómo obtengo las claves de un objeto en JavaScript?

Tengo dificultades para trabajar con un objeto devuelto por una llamada de GraphQl a dynamoDB. Le he dado a cada objeto anidado un número para una clave. Es el número que estoy tratando de usar para crear la matriz de claves, usando Object.keys()

 const groupsContext = {"01":{"Status":"Active","Name":"Group 1"},"02":{"Status":"Active","Name":"Group 2"}} let groupKeys = Object.keys(groupsContext) console.log(groupKeys)

Esta es la salida de la consola:

 Array(2897) [ "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", … ]

Probé esto en codepen y funciona, así que no estoy seguro de qué es diferente. Lo único que se me ocurre es que me falta algo entre crear el contexto de la aplicación e intentar crear las claves a partir del contexto.

Aquí está el código que uso para crear el contexto:

//Archivo de contexto

 import { useContext, createContext } from "react"; export const GroupsContext = createContext(null); export function useGroupsContext() { return useContext(GroupsContext); }

//Aplicación

 import React, { useState, useEffect } from "react"; import { GroupsContext } from "./libs/context/groupsLib"; function App() { const [groupsContext, setGroupsContext] = useState(false); useEffect(() => { onLoad(); }, []); async function onLoad() { let apiGroups try { apiGroups = await API.graphql(graphqlOperation(queries.getQuery, { PK: "Status", SK: "Test" })); setGroupsContext(apiGroups.data.getQuery.FullGroups) } catch (e) { if (e !== "Error") { onError(e); } } } return ( <div> <GroupsContext.Provider value={{ groupsContext, setGroupsContext }}> <Routing /> </GroupsContext.Provider> </div> ) ); } export default App;

//obtenerGrupos

 import { useGroupsContext } from "../../libs/context/groupsLib"; export default function ActiveGroups() { const { groupsContext } = useGroupsContext() let groupKeys = Object.keys(groupsContext) console.log(groupKeys)

Como puede ver, la matriz solo debe tener una longitud de dos. ¿Cómo puedo crear la matriz para mostrar solo las teclas numéricas?

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

0

Gracias a Nick P por sus pensamientos sobre propiedades enumerables. He modificado el código a esto:

 let groupKeys = [] for (const key in groupsContext) { groupKeys.push(`${key}`); } console.log(groupKeys)
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