• Jobs
  • About Us
  • professionals
    • Home
    • Jobs
    • Courses and challenges
  • business
    • Home
    • Post vacancy
    • Our process
    • Pricing
    • Assessments
    • Payroll
    • Blog
    • Sales
    • Salary Calculator

0

166
Views
Javascript carga todas las claves en JSON externo

Tengo JSON externo en la ubicación /data/words.json

 { "sports": ["golf", "hockey", "football"], "animals": ["giraffe", "snake", "lizard", "puma"], "video games": ["pacman", "asteroids", "super mario brothers", "donkey kong"] }

Necesito acceder a esto en mi función javascript. He cargado el archivo de la siguiente manera:

 <script type="text/javascript" src="./data/words.json"></script>

¿Cómo puedo imprimir todas las claves de JSON dado e imprimirlas en el navegador? Tenga en cuenta que siempre que JSON no tenga un nombre de variable.

about 3 years ago · Santiago Gelvez
2 answers
Answer question

0

JSON nunca tuvo la intención de cargarse de esta manera, como probablemente haya llegado a descubrir. ¿Por qué no simplemente usar fetch en su lugar ( si su entorno de ejecución esperado lo admite )?

 const jsonData = await fetch('./data/words.json').then(res => res.json());

Dependiendo de lo que tenga exactamente en mente cuando dice " imprimir todas las claves de JSON dado e imprimirlo en el navegador ", podría lograrlo con bastante facilidad:

 Object.keys(jsonData).forEach(key => console.log(key));
about 3 years ago · Santiago Gelvez Report

0

Escriba un módulo ECMAScript nativo que cargue el JSON en una constante y luego lo manipule. Tampoco es necesario importarlo antes de que se ejecute el script.

EDITAR:

Habiendo olvidado mis formas anteriores de trabajar con JavaScript puro, recordé que también necesitará un servidor web que se ejecute en su máquina local para poder cargar recursos correctamente, incluso si están almacenados localmente.

 <script type="module"> import * as words from './data/words.json'; const wordsObj = JSON.parse(words); const wordsKeys = Object.keys(wordsObj); const wordsSpan = document.createElement("span"); for (let i = 0; i < wordsKeys.length; i++) { wordsSpan.innerHTML += wordsKeys[i] + "<br>"; } document.getElementByTagName("body").appendChild(span); </script>
about 3 years ago · Santiago Gelvez Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Our process Sales
Legal
Terms and conditions Privacy policy
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recommend me some offers
I have an error