Tengo un código simple que he escrito en Python. Esta funcionando. Ahora estoy tratando de portarlo a JavaScript. El código está aquí . Estoy recibiendo este error:
sketch.js:7 Uncaught TypeError: Cannot read properties of undefined (reading 'compression_ratio') at w (sketch.js:7:39) at ifsp (sketch.js:37:13) at draw (sketch.js:54:14) at p5._main.default.redraw (p5.js:71990:27) at _draw (p5.js:64140:25)¿Qué está yendo mal aquí?
El error está aquí (Línea de inicio 28).
if (prob_sum > r) { attractor_index = j - 1; } else { attractor_index = j; } Si r es menor que 1/3 (valor de probabilidad que ha definido en la línea 51), disminuirá el índice de attractors_index usando j - 1 y, si eso sucede en la primera iteración, el índice de attractors_index será -1 como j = 0 . En ese caso, los attractors[attractors_index] devolverán undefined y llamas a w() con undefined en lugar del objeto que esperas, por lo tanto, attractors.compression_ratio . relación_compresión no tendrá una propiedad relación_compresión y se compression_ratio el error.
Puede verificar/reproducir eso fácilmente configurando manualmente r en > o < 1/3 .