Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

231
Vistas
El índice de la matriz existe cuando se registra en la consola, pero no existe cuando se accede directamente

Tengo una matriz bidimensional que almacena "trozos" como lienzos en un juego. Me encontré con un problema extraño que parece haberse manifestado aparentemente sin que yo cambiara nada. El rango puede volverse negativo, por lo que podría ser una causa.

Cuando ejecuto un ciclo para revisar y registrar cada índice de la matriz, en realidad solo registra el índice -1. Al registrar toda la matriz bidimensional, existen los índices -1, 0 y 1. Sin embargo, cuando accedo al índice 0 de dicha matriz, devuelve undefined :

Código utilizado para registrar la matriz

Código utilizado para registrar la matriz

Resultados reales registrados

resultados registrados

Está claro que el índice 0 existe en la matriz, pero cuando se accede directamente, no parece existir y un ciclo a través de cada índice no cree que exista el índice 0.

Este es un problema bastante malo ya que ahora el juego volverá a renderizar un montón de lienzos, matando fps y haciendo que el juego no se pueda jugar. No sé por qué sucede esto, y realmente no tengo idea de por qué sucede esto. Esto no sucedía antes y no he tocado el código, pero descubrí que mi fps se estaba muriendo y finalmente descubrí que la causa era la reproducción continua de fragmentos que ya existían.

He intentado algunas cosas, incluyendo:

  • Cambiar todos los índices de matriz a enteros con parseInt()
  • Intentando acceder al índice como una cadena
  • Eliminación de todos los demás códigos que manipulan la variable MAPS

No parece ser fácilmente reproducible ya que no sé la causa, pero intentaré encontrar la razón exacta por la que parece hacer esto.

Actualización: parece funcionar cuando se accede directamente a través de la consola, sin embargo, en la función no funciona.

Actualizar

Ignore los dos registros entre la entrada y la salida, eso se debe a un poco de retraso.

Actualización 2: la longitud de la matriz parece ser negativa, aunque todavía tiene índices positivos.

actualizar2

Actualización 3: acabo de comprobar GitHub Desktop y no he cambiado nada relacionado con la matriz, y no sucede en el código anterior. No sé qué pudo haber hecho que esto sucediera de repente.

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Resulta que el "truco útil" para borrar una matriz no funciona: establecer la longitud de una matriz en 0 no siempre la borra. Termina haciendo algo y no parece funcionar correctamente en mi caso.

También resulta que estaba limpiando accidentalmente partes de la matriz.

Lo siento.

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda