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

200
Vistas
Estoy tratando de usar un ciclo while para tomar la entrada del usuario e insertarla en una matriz Javascript

Así que estoy tratando de tomar userResponse del indicador, convertirlo en un número entero, luego tomar esa respuesta y agregarla a mi total. Siempre que mi total sea inferior a 35, debería seguir en bucle. Una vez que el total de UserResponse haya llegado a 35, el userResponse debe insertarse en la matriz ShoppingCart y luego el bucle debe romperse y aparecer una alerta de que han alcanzado el umbral de 35. (por cierto, lo siento, soy nuevo en stackoverflow, disculpe mi novato).

 //==== VARIABLES ======== let shoppingCart = []; let shippingThreshhold = 35; let userResponse; let total; //==== LOGIC ======== //CHECK FOR ITEMS UNTIL THRESHOLD IS MET. while (total < shippingThreshhold){ //GET ITEM COST FROM USER let userResponse = prompt("What is the value of the item you have selected?"); //CONVERT USER INPUT TO A NUMBER userResponse.parseInt(); //ADD ITEM COST TO RUNNING TOTAL VARIABLE let total = shippingThreshhold - userResponse //PUSH ITEM COST TO CART ARRAY userResponse.concat(shoppingCart); } //SEND POPUP MESSAGE TO USER alert("Your shipping for this order will be free!");

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

0

Hay algunos problemas con su código:

  1. Necesitas inicializar el total
  2. No agrega el costo del artículo al total correctamente
  3. No analiza la respuesta del userResponse usando parseInt correctamente
  4. No empujas userResponse al carrito de shoppingCart correctamente
  5. No hay razón para declarar userResponse globalmente.

Algunas mejoras que también podrías hacer:

  1. No es necesario almacenar el total , ya que puede usar el carrito de shoppingCart para calcularlo (pero mantuve el total para que sea más simple).
  2. Muestre al usuario su carrito tanto a medida que avanza como al final.
  3. Dé formato a la constante shippingThreshold usando un formato de nomenclatura convencional para constantes (todas en mayúsculas separadas por guiones bajos).
  4. Use const en lugar de let cuando sea posible, para evitar sobrescribir involuntariamente los valores de las variables.
  5. Manejar casos extremos.

 //==== VARIABLES ======== const shoppingCart = []; const SHIPPING_THRESHOLD = 35; let total = 0; //==== LOGIC ======== //CHECK FOR ITEMS UNTIL THRESHOLD IS MET. while (total < SHIPPING_THRESHOLD) { //GET ITEM COST FROM USER const userResponse = prompt(`Your cart: ${shoppingCart.length ? shoppingCart : 'empty' }. What is the value of the item you have selected?`); if (userResponse === null) { break } else { //CONVERT USER INPUT TO A NUMBER const itemCost = parseInt(userResponse); if (Number.isNaN(itemCost)) { alert(`"${userResponse}" is not a number please try again or press cancel to exit.`) } else { // ADD TO TOTAL total += itemCost //PUSH ITEM COST TO CART ARRAY shoppingCart.push(itemCost); } } } //SEND POPUP MESSAGE TO USER if (total >= SHIPPING_THRESHOLD) { alert(`Your shipping for this order will be free! Your cart: ${shoppingCart}`); } else { alert("Thanks for visiting!") }

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