Quizás una pregunta simple, pero todavía soy nuevo en JS/nodeJS.
Tengo un script que está haciendo algunas coincidencias de cadenas básicas (dict.js), y estoy tratando de acceder a un objeto con formato JSON desde otro archivo (words.json) para iterar.
La estructura del directorio se parece a:
scratch - algorithms - dict.js - utilities - words.jsonEl contenido de los archivos es:
palabras.json
{"a": 1,"aa": 1,"aaa": 1,"aah": 1,"aahed": 1,"aahing": 1,"aahs": 1,"aal": 1}dict.js
decode (password) { const jsonData = require('../utilities/words.json'); myObj = JSON.parse(jsonData); for (const x in myObj) { console.log(x) // compare password against item in words.json } console.log(Object.keys(myObj).length) return "stub"; }Recibo un error en las herramientas de desarrollo cuando creo un bloque (este es el backend de un bloque en Scratch) que usa esta función Decode.
Error de sintaxis no detectado: token o inesperado en JSON en la posición 1
Gracias
En el entorno nodejs, puede importar directamente datos de archivos json sin analizarlos. Por ejemplo:
const myObj = require('../utilities/words');Esto le brinda los datos en su archivo json como un objeto listo para usar.
En su caso, está intentando analizar el objeto json con JSON.parse() que espera json en cadena. Así que simplemente elimine la parte JSON.parse(jsonData);