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

249
Vistas
¿Por qué las partículas devuelven NaN como una posición?

Soy un poco nuevo en JavaScript y la codificación en general, he estado viendo tutoriales y estoy tratando de hacer un pequeño sistema de partículas en JavaScript, así que creé la clase de partículas:

 class Chakibum{ cosntructor(){ this.x = Math.random() * canvas.width; this.y = Math.random() * canvas.height; this.size = randi(1, 6); this.velX = randi(-2, 3); this.velY = randi(4, 6); //randi is a randomizer function i made to not have to do math random all the time } update(){ this.x += this.velX; this.y += this.velY; } dibuparti(){ ctx.fillStyle = 'red' ctx.beginPath(); ctx.arc(this.x, this.y, 50, 0, Math.PI * 2); ctx.fill(); } }

Pero cuando trato de animarlo, el valor x de las partículas en la matriz devuelve NaN, el código para la animación es:

 function lalista(){ for (let i = 0; i < 100; i++){ labolitas.push(new Chakibum()); } } lalista(); function manejo(){ for (let i = 0; i < labolitas.length; i++){ labolitas[i].update(); labolitas[i].dibuparti(); } } function anima(){ ctx.clearRect(0, 0, canvas.width, canvas.height); manejo(); requestAnimationFrame(anima); }

la función randi es:

 function randi(min, max){ return Math.floor(Math.random() * (max - min) ) + min; }

Si cambio this.x y this.y en dibuparti() en la clase chakibum para números, las partículas aparecen, pero si lo cambio dentro del constructor, aún devuelven NaN y no aparecen. Intenté cambiar el nombre de los valores, comentar la actualización (), cambiar el orden de las cosas, no usar la función randi() que hice, usarla y nada funcionó, no entiendo qué está mal con el código, Busqué en línea pero no pude encontrar nada, la mayoría de los problemas de NaN que encontré en línea se deben a las declaraciones IF.

La primera instancia de NaN aparece dentro de la consola cuando ejecuto el código, dentro de la matriz de partículas (matriz vacía donde va cada instancia de chakibum ) cada chakibum devuelve NaN como su valor x e y .

about 4 years ago · Juan Pablo Isaza
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