Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

390
Views
¿Por qué obtengo el TypeError no detectado: asignación a variable constante?

Estoy tratando de crear una aplicación de máquina expendedora. Creé un constructor de clase en un archivo y usé exportar para poder importarlo en mi otro archivo js.

Cuando intento crear un objeto de clase para DrinkItem , obtengo un Uncaught TypeError: Assignment to constant variable

por favor vea el código a continuación:

Código del archivo JS 1

 export class DrinkItem{ constructor(id, name, flavour,cost,stockAvailable){ this.id = id, this.name = name, this.flavour = flavour, this.cost = cost, this.stock = stockAvailable } }

Código del archivo JS 2

 import { DrinkItem } from "../classes/drinkItem.js" /**************************** * Generates an ID for task * ****************************/ const createItemId = () => `${Math.floor(Math.random() * 1000)} - ${new Date().getTime()}`.value //array for purchased drink item let menu = []; /************************************************* * Create at least 5 different DrinkItem objects * *************************************************/ DrinkItem = new DrinkItem( createItemId, "Fanta", "grape", 18, 10 ); let test = DrinkItem.push(menu) console.log(test)

El error ocurre en el new DrinkItem() , así que tal vez estoy haciendo esto incorrectamente, he mirado MDN, pero realmente no lo explica bien, o tal vez no lo entiendo.

¿Qué estoy haciendo mal? Estoy usando el nombre de clase DrinkItem para la constante, ya que quiero que se vincule al constructor.

Lo que quiero hacer es crear/crear instancias de al menos 5 objetos DrinkItem diferentes dentro de la matriz del menú.

una vez que se crean los 5 objetos DrinkItem, puedo insertarlos en la menu array , pero por ahora estoy buscando cómo crear al menos 1 objeto de la clase.

about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Solo la última pieza de código: está asignando un valor a una clase

 let drinkItem = new DrinkItem( createItemId, "Fanta", "grape", 18, 10 );

Luego aquí otro error, el menú es una matriz y DrinkItem es un objeto, presione el último en el primero

 let test = menu.push(drinkItem) console.log(test)
about 4 years ago · Juan Pablo Isaza Report

0

Cambia a esto:

 let drinkItem = new DrinkItem( // DrinkItem variable name is already used for the class, you cannot give your instance the same variable name createItemId(), // you want to call the function, not assign the function to DrinkItem.id "Fanta", "grape", 18, 10 );
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!